Ruby on rails 关联语法ruby on rails复数
我是Ruby的新手,只是利用这个论坛来帮助理解Ruby语言,同时编写一个示例应用程序来磨练我的技能 我试图在产品和媒体之间建立一种多方面的关系。我怀疑我面临的挑战是因为复数形式的媒体,但不知道如何解决它Ruby on rails 关联语法ruby on rails复数,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.1,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.1,我是Ruby的新手,只是利用这个论坛来帮助理解Ruby语言,同时编写一个示例应用程序来磨练我的技能 我试图在产品和媒体之间建立一种多方面的关系。我怀疑我面临的挑战是因为复数形式的媒体,但不知道如何解决它 class CreateMedia < ActiveRecord::Migration def change create_table :media do |t| t.string :type t.string :alt t.boolean
class CreateMedia < ActiveRecord::Migration
def change
create_table :media do |t|
t.string :type
t.string :alt
t.boolean :is_primary
t.string :url_tiny
t.string :url_small
t.string :url_regular
t.string :url_large
t.string :title
t.timestamps
end
end
end
class Media < ActiveRecord::Base
attr_accessible :alt, :is_primary, :title, :type, :url_large, :url_regular, :url_small, :url_tiny
belongs_to :product
end
class Product < ActiveRecord::Base
attr_accessible :assoc_product,:product_id, :merch_associations, :aux_description, :buyable, :long_description, :name, :on_special, :part_number, :release_date, :short_description, :withdraw_date, :occasion
has_and_belongs_to_many :categories
has_many :merch_associations
has_many :assoc_products, :through => :merch_associations
has_many :media
...
我查看了数据库,发现这个表实际上被称为Media,而不是Media。所以我认为它应该是复数形式,对吗?(此代码由rails生成器生成)
就像我说的,我是Rails的新手,所以如果有人能为我指出正确的方向,在产品和媒体之间创建一对多,那就太好了?据我所知,您有一个名为“媒体”的模型。请注意,正如您在问题中提到的,“媒体”已经是复数形式。正确的做法是有一个名为“媒体”的模型,然后是正在处理的关系:
class Medium < ActiveRecord::Base
attr_accessible :alt, :is_primary, :title, :type, :url_large, :url_regular,:url_small, :url_tiny
belongs_to :product
end
class-Medium
及
类产品:merch\u关联
有很多:媒体
...
结束
有时你可能会想设置或覆盖Rails的奇点化和复数化,我不建议在这种情况下这样做,但请看一看如何做到这一点
请注意,如果创建一个名为“Media”的模型,数据库表将被称为“Media”。谢谢。也许我应该学习英语而不是Ruby on Rails:)重命名为Media解决了这个问题。干杯。
uninitialized constant Product::Medium
class Medium < ActiveRecord::Base
attr_accessible :alt, :is_primary, :title, :type, :url_large, :url_regular,:url_small, :url_tiny
belongs_to :product
end
class Product < ActiveRecord::Base
attr_accessible :assoc_product,:product_id, :merch_associations, :aux_description, :buyable, :long_description, :name, :on_special, :part_number, :release_date, :short_description, :withdraw_date, :occasion
has_and_belongs_to_many :categories
has_many :merch_associations
has_many :assoc_products, :through => :merch_associations
has_many :media
...
end