Използвал съм Has_many
отношение към a Subscriber
и Sub models
class Sub < ActiveRecord::Base
belongs_to :Subscriber
end
class Subscriber < ActiveRecord::Base
has_many :subs
end
Докато вмъквате запис в Sub
трапезна бу пена
Получавам грешката по-долу, както следва
Отчет за грешки
Rails Console.
a=Subscriber.find(1)
Subscriber Load (0.0ms) SELECT "subscribers".* FROM "subscribers" WHERE "subscribers"."id" = ? LIMIT 1 [["id", 1]]
=> #<Subscriber id: 1, name: "arun", created_at: "2015-12-22 07:38:34", updated_at: "2015-12-22 07:38:34">
irb(main):002:0> a.subs
Sub Load (0.0ms) SELECT "subs".* FROM "subs" WHERE "subs"."subscriber_id" = ? [[nil, 1]]
ActiveRecord::StatementInvalid: SQLite3::SQLException: no such column: subs.subscriber_id: SELECT "subs".* FROM "subs" WHERE "subs"."subscriber_id" = ?
Отговори:
0 за отговор № 1употреба
class Sub < ActiveRecord::Base
belongs_to :subscriber
end
class Subscriber < ActiveRecord::Base
has_many :subs
end
правя СИГУРЕН ти си бягал миграции, Не използвайте КАПИТАЛ в асоциации.
Също така можете ли да споделите вашата схема ??
PS: Моля, въведете кода си.
0 за отговор № 2
използвай това belongs_to :subscriber
ако не е работа, отколкото
Добавете колона Subscri_id към подс
или
въведете следващата команда за релси
rails g migration AddSubscriber_idToSub subscriber_id:integer
тогава
rake db:migrate