我正在使用Rails 4,我正在编辑现有的应用程序。在活动管理员中查看模型时出现以下错误。
function handleAddSoftwareVersion(button){
$("#device_versions").append($('<option>', {
value:1,
text: 'MyOption'
}));
}
ActiveRecord::StatementInvalid in Admin::Events#show
我实际上没有或不需要那个专栏,所以我无法理解为什么要这样做。这是我的PG::UndefinedColumn: ERROR: column trainers.event_id does not exist
LINE 1: SELECT "trainers".* FROM "trainers" WHERE "trainers"."even...
^
: SELECT "trainers".* FROM "trainers" WHERE "trainers"."event_id" = $1 LIMIT 1
模型。
Event
Iv完成class Event < ActiveRecord::Base
has_one :trainer, inverse_of: :events
belongs_to :training_request, inverse_of: :event
delegate :module, to: :training_request
end
并且它全部都是最新的。谁能明白为什么会这样呢?
答案 0 :(得分:0)
使用rails,关联has_one和belongs_to需要“trainers”表中“events”表的id,因此它可以在你的trainers表中定义你指的是哪个事件,所以你需要添加event_id列到培训师表。
为此,您可以生成迁移
rails g migration add_event_id_to_trainer event_id:integer
然后运行
rake db:migrate