【发布时间】:2013-05-22 10:17:01
【问题描述】:
在我看来:
<%= f.collection_select :product_id, Product.find(:all), :id, :name %>
我在上面的代码中指的是Product.find(:all)。
或者在某些情况下我们在模型中定义一个函数,然后在视图中调用它:ModelName.my_function
如果没有!在不违反 MVC 原则的情况下,最好的方法是什么?
我的意思是它是我们可以遵循的最佳架构还是我们有其他东西?
【问题讨论】:
-
我看不出有什么问题。您正在创建一个名称为“product_id”的下拉列表以及所有可用产品的名称和 ID 选项。
-
@satya 我的意思是我正在我的视图 Product.find(:all) 中进行查询以获取下拉列表的所有产品。
-
.. 我认为整个 Rails 并没有实现 MVC,但这可能只是 my opinion
-
没关系,萨钦。另一种方法是在控制器中初始化产品。 (products = Product.all) 并在视图中使用@products。 “产品”应该是控制器中的实例变量。我无法在此评论中随意添加 :(
标签: ruby-on-rails ruby-on-rails-3 model-view-controller