簡體   English   中英

想要對兩個模型使用載波

[英]want to use carrierwave for two models

我想為兩個不同的模型保存圖像。 我正在使用載波寶石。

我創建如下。

 class User < ActiveRecord::Base
  mount_uploader :avathar, AvatarUploader
 end

 class News < ActiveRecord::Base
  mount_uploader :avatar, NewsUploader
 end

上載者:

 class AvatarUploader < CarrierWave::Uploader::Base
  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end
 end

 class NewsUploader < CarrierWave::Uploader::Base
  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end
 end

它適用於用戶模型。 但這不適用於新聞模型。 請幫助我糾正此問題。 提前致謝。

您顯示的信息並不能真正幫助您回答問題。

您是否為此創建了遷移(即像帖子一樣)? (AddAvatarToUsers)

class AddAvatarToNews < ActiveRecord::Migration
  def self.up
    add_column :news, :avatar, :string
  end
  def self.down
    remove_column :news, :avatar
  end
end

然后在您的控制器中獲取類似這樣的消息...

def show
    @news = News.find(params[:id])
    @photo = Photo.new(params[:news_id])
end

您的config / routes.rb文件中還顯示了正確的資源嗎?

 resources :users
 resources :news
 resources :photos

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM