我有Post
模型,而帖子可以是視頻帖子(帶有YouTube鏈接)或文章帖子(帶有正文)。 有一個枚舉post_type
,它確定帖子的類型。如何有條件地呈現不同的展示模板
在我的show.html.erb
視圖中,我想根據顯示的帖子類型顯示不同的模板文件。
對於文章和視頻,整個html.erb
文件內容是不同的。
在我的控制器中,我希望能夠檢查帖子類型並相應地呈現不同的文件。
if @post.video?
//render video show view `video_show.html.erb`
else
// render article show view `article_show.html.erb`
end
我已經嘗試過render template: 'posts/video'
呈現一個新的posts/video.html.erb
文件我創建,但沒有在所有的工作。
這樣做的最好方法是什麼?我想遵循約定,而不是使用粗糙的部分和簡單的if-else在部分之間切換。
嘗試檢查enum值。 「@ post.video?」是否返回「true」? – Pavan
我實際上在其位置使用了另一個布爾值。是渲染模板的正確方法嗎? – danielbker
你有沒有試過渲染文件? – Pavan