是否可以接受在视图模板中保留逻辑(特别是在MVC术语和Rails中)?有什么方法可以避免这样的事情吗?
<% if current_user %>
Welcome, <%= current_user.name %>.
<%= link_to "Sign Out", signout_path %>
<% else %>
<%= link_to "Sign in with Twitter", "/auth/twitter" %>
<% end %>
或者我是在发明一种“自行车”而且上层的东西还不错?
答案 0 :(得分:12)
当然要归结为偏好。我会说上面的内容是可以接受的。简单的条件和循环在视图中非常标准。我想说要避免的事情是分配变量,为尚未收集的数据命中模型等等。
如果你不想要那里的东西,你可以随时建立帮手。这种事情必须在某个地方。
编辑:
一个好的经验法则是“这段代码与演示文稿直接相关吗?”我会说有关你上述案例的答案是肯定的。