gpt4 book ai didi

ruby-on-rails - Rails/在 View 中使用模型

转载 作者:太空宇宙 更新时间:2023-11-03 16:33:45 25 4
gpt4 key购买 nike

我是 Ruby on Rails 的新手,我对我的 MVC 逻辑没有信心。

我是这样处理的:

  • 我有一个模型'User'
  • 在我的 Controller 中,我设置了一个名为 @users = User.all 的实例变量。
  • 在我看来,我是这样实现我的逻辑的: <%= @users.each ... %>

我在问自己是否可以绕过 Controller 步骤并将其写在我的 View 中: <%= User.all.each ... %>

我想在我的项目中使用好的实践,第二种方式可以接受吗?

最佳答案

在现实生活中, Controller 中的操作比 User.all.each 更复杂例如

@cars = Car.scoped
@cars = @cars.includes(:body_type, :brand, :city, :drive, :engine_type, :model, :region, :transmission)
@cars = @cars.select(['`cars`.*','`stats`.recount']).joins('left outer join stats on (cars.model_id = stats.model_id and cars.year = stats.year)')
@cars = @cars.limit(15)

和模式以及更多其他逻辑

在 View 中你只需要渲染这个对象
在我的示例中,我使用 render partial在 View 中

= render @cars

在 view/_car.html.haml 中

- for car in @cars
.row-fluid.car
= car.price
= etc

所以,如果你想改变 View ,你就改变 View
如果你想改变你改变 Controller 收集过程的行为
如果你想改变你改变模型的对象的行为

同样的事情有bug
一切井井有条
秩序很好很漂亮

关于ruby-on-rails - Rails/在 View 中使用模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11240345/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com