示例:
has_many :books
:图书会成为RAILS为我创建的方法吗?
如果是这样,我可以简单地将其更改为其他内容吗?喜欢:notes 所以我可以用 User.notes ????
答案 0 :(得分:3)
如果您只是想重命名方法,但保留模型(即有一个名为Book的模型但名为notes的方法),则可以使用class_name符号:
has_many :notes, :class_name => :Book
答案 1 :(得分:1)
是的,:书籍是为您创建的模型。此模型对应于Model Book.rb,如果要将“:books”更改为“:notes”,则必须创建“模型注释”。您可以使用此命令(在终端中)创建模型注释:
rails g model注意名称:string,description:string parameter:type
更改模型之间的关系后,例如,您有Model Book.rb和Model Person.rb,并且您想要将Book更改为Note,那么:
user.rb
class User < ActiveRecord::Base
attr_accessible :id, :number
has_many :books #delete this
has_many :notes #add this
end
book.rb
class Book < ActiveRecord::Base
attr_accessible :id, :name
belongs_to :user #delete this
end
删除Book模型中的关系并添加Note模型。
note.rb
class Note < ActiveRecord::Base
attr_accessible :id, :name
belongs_to :user #add this
end