和我们一样,我有一个用户控制器/模型。
我想添加一个'favorite_car'模型,以便从数据库中的favorite_cars表中提取他们喜欢的汽车。在模型/用户。我有has_many favorite_cars
和in models/favorite_car。rb有belongs_to user
我可以这样使用和存储数据没有favorite_cars控制器吗?
如果您想从用户创建表单更新'Favorite Car',请查看accepts_nested_attributes。(http://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html)
你的用户模型应该是"accepts_nested_attributes_for:favorite_car"。在您的视图中,您可以组合用户表单字段和汽车表单字段,并将其发送回用户控制器。
如果您想在与用户关联之外访问favorite_car模型,它肯定需要自己的控制器。
典型的做法是将一个控制器与您能够创建、读取、更新或销毁的每种类型的模型相关联,因为这与REST方法相对应。
如果您有一个FavoriteCar
模型,您可能应该有一个FavoriteCarsController
与它相关联,以帮助创建这些。如果模型本身实际上是User
和Car
之间的连接,您可以将其作为方法添加到CarsController
中,作为执行相同操作的favorite
。