Dog*_*Dog 2 enums ruby-on-rails activeadmin
undefined method尝试获取ActiveAdmin表单以使用基于对象的枚举属性的键的选择框时,我仍然收到错误消息。在堆栈溢出后按照建议的方法为枚举配置活动管理表单似乎使我半途而废,尽管我对象的引擎方面似乎通过NoMethodError异常使枚举属性生效。
#/lib/book_store/admin/books
if defined?(ActiveAdmin)
ActiveAdmin.register BookStore::Book, as: 'Book' do
# customize your resource here
form do |f|
f.semantic_errors # shows errors on :base
f.inputs do
f.input :cover_type, as: :select, collection: BookStore::Book.cover_type.keys
end
f.actions # adds the 'Submit' and 'Cancel' buttons
end
permit_params :name, :lead, :excerpt, :description, :price, :slug, :cover_type, :num_pages, :size, :cover_image, :author, :author_id, :category
end
end
#app/models/book_store/book.rb
module BookStore
class Book < ActiveRecord::Base
belongs_to :author
belongs_to :category
enum cover_type: [:soft, :hard]
end
end
Run Code Online (Sandbox Code Playgroud)
得到以下错误
undefined method `cover_type' for #<Class:0x007fe685217af0>
Run Code Online (Sandbox Code Playgroud)
这是完整的堆栈跟踪
小智 7
我认为cover_type应该多元化。
f.input :cover_type, as: :select, collection: BookStore::Book.cover_types.keys
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1645 次 |
| 最近记录: |