1

根据CKEditor gem 的自述文件,我应该能够为图像和附件设置替代范围。我试图这样做,它只是将其转换为 ckeditor_assets 表中的一个字段。

我可以创建迁移以添加必填字段,但是如何配置 ckeditor(可能是通过自动生成的模型)以便在创建新记录时使用正确的数据填充该字段?

4

2 回答 2

2

解决了。

我使用 before_save 过滤器来设置我想要的字段。然后在应用程序控制器中更改方法以将该字段用作范围。

# models/ckeditor/asset.rb

before_save :set_company_id

def set_company_id
  self.company_id = assetable.try(:company_id)
end


# controllers/application_controller.rb

protected

def ckeditor_pictures_scope(options = { :company_id => "#{company_id}" })
  ckeditor_filebrowser_scope(options)
end

def ckeditor_attachment_files_scope(options = { :company_id => "#{company_id}" })
  ckeditor_filebrowser_scope(options)
end
于 2012-08-24T11:14:17.530 回答
0

我认为最简单的解决方案:

#controllers/application_controller.rb
protected

def ckeditor_pictures_scope(options = { :assetable_id => "#{current_page.id}" ,:assetable_type => "Page" })
  ckeditor_filebrowser_scope(options)
end

def ckeditor_attachment_files_scope(options = { :assetable_id => "#{current_page.id}" ,:assetable_type => "Page" })
  ckeditor_filebrowser_scope(options)
end


def ckeditor_before_create_asset(asset)
  asset.assetable = current_page if current_page
  return true
end
于 2014-01-23T10:45:45.963 回答