我使用rails_admin。我有几个表,你可以看到除了一个之外的所有表,当我试着看它时我得到一个错误:
Showing /home/barmaley/.rvm/gems/ruby-2.1.1/gems/rails_admin-0.6.2/app/views/rails_admin/main/index.html.haml where line #135 raised:
SQLite3 :: SQLException: no such column: headings.section_id: SELECT "headings". * FROM "headings" WHERE "headings". "Section_id" =?
是我的部分模型
class Section < ActiveRecord::Base
has_many :headings
searchable do
text :name
end
end
和我的标题模型
class Heading < ActiveRecord::Base
belongs_to :section
searchable do
text :name
text :address
text :phone
end
end
如何解决此错误?
这是我在尝试查看表格时看到的内容:
- if @other_left_link ||= other_left && index_path(params.except('set').merge(params[:set].to_i != 1 ? {set: (params[:set].to_i - 1)} : {}))
%td.other.left= link_to "...", @other_left_link, class: 'pjax'
- properties.map{ |property| property.bind(:object, object) }.each do |property|
- value = property.pretty_value
%td{class: "#{property.css_class} #{property.type_css_class}", title: strip_tags(value.to_s)}= value
- if @other_right_link ||= other_right && index_path(params.merge(set: (params[:set].to_i + 1)))
%td.other.right= link_to "...", @other_right_link, class: 'pjax'
schema.rb
create_table "headings", force: true do |t|
t.string "name"
t.string "address"
t.integer "phone"
t.integer "sec"
t.datetime "created_at"
t.datetime "updated_at"
end
create_table "sections", force: true do |t|
t.string "name"
t.datetime "created_at"
t.datetime "updated_at"
end
答案 0 :(得分:0)
如果查看db / schema.rb,则标题表中没有名为section_id的列。否则你需要一个&#34; belongs_to:section&#34;无法工作。
所以你需要创建那个列。
rails generate migration AddSectionIdToHeading section_id:integer
rake db:migrate
欢呼声 史蒂夫