這個問題has been asked and answered(該用戶)沒有出現頁面,「未定義的方法,‘dragonfly_accessor’」,但我自己的經驗已經改變。蜻蜓寶石,圖像保存到數據庫,但在Rails的控制檯
第一:Rails的4.0.4,2.1.0紅寶石,蜻蜓寶石1.0.5。
我在這個Rails 4博客應用程序上使用Dragonfly gem進行圖像上傳,並且遇到圖像似乎通過模型保存的問題(本地,至少在默認公用文件夾中:尚未使用在線文件存儲),但不會出現在文章顯示頁面中。要清楚,頁面加載並顯示一個破碎的圖像鏈接。
查詢具體細節的文章在Rails的控制檯,我下面NoMethodError有:
NoMethodError: undefined method `dragonfly_accessor' for #<Class:0x00000108bc17f0>
from /Users/user/.rvm/gems/ruby-2.1.0/gems/activerecord-4.0.4/lib/active_record/dynamic_matchers.rb:22:in `method_missing'
我檢查寶石加載。蜻蜓的設置只不過是什麼provided on their site。我已經在initializers文件夾中生成了dragonfly.rb文件。以下是我提供的文檔設置的改編:
(型號)article.rb:
class Article < ActiveRecord::Base
dragonfly_accessor :image # Defines reader/writer for uploaded images
# validators, etc...
遷移:
class AddImageToArticle < ActiveRecord::Migration
def change
add_column :articles, :image_uid, :string
add_column :articles, :image_name, :string
end
end
show.html.erb
<%= image_tag @article.image.thumb('400x200#').url if @article.image_stored? %>
articles_helper.rb(這裏我把我的權限強PARAMS):
module ArticlesHelper
def article_params
params.require(:article).permit(:title, :body, :tag_list, :image)
end
end
關於上面鏈接的文章的答案,我試過在我的article.rb模型文件中添加extend Dragonfly::Model
;然而,當在Rails控制檯中找到上傳圖片的文章時,結果爲NameError: uninitialized constant Article::Dragonfly
。
我錯過了任何必要的細節嗎?請告訴我。任何援助非常感謝。