如何将新模型(视频)添加到与Product及其控制器关联的spree核心以及在Spree Admin布局中创建它的链接

时间:2015-06-13 13:31:13

标签: ruby-on-rails spree

enter image description here

我想将最后一个链接视频添加到Product下的Spree Admin面板。 我怎么能继续做这个功能。

我将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:4)

您可以创建一个狂欢扩展程序或使用您现有的一个扩展程序。在扩展程序的models/spree目录中,创建模型文件video.rb

module Spree
  class Video < ActiveRecord::Base
  #Add your active record associations
  #validations and model methods

  end
end

然后,您必须修饰受新视频模型影响的Spree Core模型。例如,您的Spree Product模型。 在您的扩展程序的models/spree目录中,创建一个产品模型装饰器product_decorator.rb

module Spree
  Product.class_eval do
  #your video association with the product. e.g
  has_one :video
  end
end

您可以为与您的视频模型相关联的任何其他狂欢核心模型执行此操作。

在您的扩展程序controllers/spree/admin中,您必须创建videos_controller.rb。我建议您查看spree backend images_controller以获取有关如何添加此控制器的说明。如果您打算将视频上传到应用程序,则可能需要audio/video代码转换器,例如paperclip-av-transcoder

您还必须删除spree/backend/app/views/spree/admin/products/new.html.erbspree/backend/app/views/spree/admin/products/edit.html.erb以添加视频添加和删除功能。我不知道您的应用程序的结构和复杂性,因此这不是一个明确的答案,而是一个如何实现您想要的方向。

`