Ruby on Rails를 사용하고 있으며 프로모션 목적으로 데이터베이스 데이터를 사용하는 웹 페이지를 렌더링하고 싶습니다. 소스 코드는 다음과 같이 언급한다 :데이터베이스 데이터를 사용하는 홍보 콘텐츠를 처리하는 방법은 무엇입니까?
# Model
PROMO_ID = 9
# Controller
@promo_article = Article.find(PROMO_ID)
# View
<%= @promo_article.title %>
<%= @promo_article.content %>
나는 "간단하게"데이터베이스 레코드 관련된 개체 인스턴스 (홍보 한)을 찾아 위의 코드에서를 다음 내가보기에서 렌더링합니다. 그러나 위의 코드를 사용하면 레코드 존재 여부를 확인해야합니다 (즉, id
은 PROMO_ID
으로 명시된 것과 같습니다). 그렇지 않으면 응용 프로그램에서 오류가 발생할 수 있습니다.
페이지를 작동 시키려면 개발 및 프로덕션 데이터베이스에 모두 레코드가 있어야하며 해당 참조 번호는 PROMO_ID
일 수 있습니다. 개발시에 위의 코드와 마찬가지로 9
일 수 있습니다. 생산시에는 378
일 수 있습니다.
모의 개체를 내 용도로 사용하려고했지만 "홍보"레코드를 사용자가 추가 처리 할 수 있기 때문에 데이터베이스 레코드를 사용하고 싶습니다. 이 문제에 대한 균형 잡힌 린 솔루션을 찾고 있습니다.
당신은 무엇에 관해 조언합니까? 어떻게해야합니까? id
상수를 언급하거나 mock 객체를 사용해야합니까?
이 질문을 전에 보았습니다. 그것을 명확하게하기 위해 질문을 편집하고, 그것을 다시 만들지 마십시오. 그리고 나는 여전히 "판촉 내용"의 정의를 얻지 못합니다. 어떤 논리를 따라야합니까? –
오직 1 개의 기사 만 프로모션이 될 수 있습니까? 홍보 기사를 다른 기사로 변경할 수 있어야합니까? 그 이드를 어떻게 선택하셨습니까? –
@ D-side - 논리적 인 점은 프로모션 목적은 사용자뿐만 아니라 판촉 목적으로도 사용되며 데이터베이스에 단 하나의 기사 레코드 만 갖고 싶다는 것입니다. – Backo