我为我的 Rails 应用程序安装了friendly_id和ActiveScaffold 。
因为并非我的所有模型都有唯一的名称字段,所以我必须使用Slugged 模型才能使其工作。friendly_id 完美地完成了这项工作我有友好的 URL,我可以使用友好的 id 加载对象。
但是当我想用 ActiveScaffold 创建一个新对象时,它会显示以下错误消息:
ActiveScaffold::ReverseAssociationRequired (Association slugs:为了支持 :has_one 和 :has_many 父记录是新的并且子记录验证父记录的存在,ActiveScaffold 需要反向关联(belongs_to)。)
当然,我无法belongs_to
在该端创建关联,因为它是由friendly_id
模块创建的,并且每个以 slugged 方式工作的模型都应该包含在那里。
该模型如下所示:
class FooBar < ActiveRecord::Base
has_friendly_id :name, :use_slug => true, :approximate_ascii => true
end
在我的ApplicationController
:
class Admin::FooBarsController < Admin::ApplicationController
active_scaffold :foo_bar do |config|
config.list.columns = [ :id, :name ])
config.update.columns = [ :name ]
config.create.columns = config.update.columns
end
end
有没有办法使这项工作?
版本:friendly_id , git 分支3.2.0
中最新的 ActiveScaffold 。rails-2.3
更新:似乎它在生产模式下不冲突。