RoR: पेपरक्लिप को अमेज़ॅन एस 3 से जोड़ने में सक्षम नहीं - रूबी-ऑन-रेल, रूबी-ऑन-रेल-प्लगइन्स, अमेज़ॅन, पेपरक्लिप, अमेज़ॅन-एस 3

मैंने अपना ऐप हरोकू में तैनात करने का फैसला किया है और मैं उनके ट्यूटोरियल का अनुसरण कर रहा हूं। हालाँकि, Im अपने अमेज़न S3 बाल्टी को अभी एक पेपरक्लिप प्लगइन से जोड़ने की कोशिश कर रहा हूँ और Im को यह त्रुटि मिल रही है:

चित्र # सूचकांक में तर्क

एप्लिकेशन / विचार / छवियां / index.html.erb दिखा रहा है जहां लाइन # 19 उभरी है:

पंक्ति 0, कर्नल 39 पर सिंटैक्स त्रुटि: `बाल्टी: (मेरी सूची यहाँ)
access_key_id: (मेरा पता कुंजी आईडी यहाँ)
secret_access_key: (MY SECRET ACCESS KEY HERE)
"
निकाले गए स्रोत (लाइन # 19 के आसपास):

16: <% = h image.created_at%>
17: <% = h image.updated_at%>
18:
19: <% अगर image.img.exists? तब%>
20:

<% = image_tag image.img.url (: thumb)%>


21: <% और%>
22:

कोई फोटो संलग्न नहीं है, एक अपलोड करें।

RIDS_ROOT: C: / उपयोगकर्ता / Mariusz / साइट / wiw_development

आवेदन ट्रेस | फ्रेमवर्क ट्रेस | फुल ट्रेस
सी: /Ruby/lib/ruby/1.8/yaml.rb: 133: में load"
C:/Ruby/lib/ruby/1.8/yaml.rb:133:in
load"
सी: /Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/storage.rb: 236: में find_credentials"
C:/Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/storage.rb:176:in
parse_credentials "
सी: /Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/storage.rb: 138: में extended"
C:/Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/storage.rb:137:in
instance_eval "
सी: /Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/storage.rb: 137: में extended"
C:/Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/attachment.rb:269:in
विस्तार "
सी: /Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/attachment.rb: 269: में initialize_storage"
C:/Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip/attachment.rb:51:in
प्रारंभ "
सी: /Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip.rb: 326: में new"
C:/Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip.rb:326:in
attachment_for "
सी: /Users/Mariusz/Sites/wiw_development/vendor/plugins/paperclip/lib/paperclip.rb: 229: में img"
C:/Users/Mariusz/Sites/wiw_development/app/views/images/index.html.erb:19:in
_run_erb_app47views47images47index46html46erb "
सी: /Users/Mariusz/Sites/wiw_development/app/views/images/index.html.erb: 12: में each"
C:/Users/Mariusz/Sites/wiw_development/app/views/images/index.html.erb:12:in
_run_erb_app47views47images47index46html46erb "
C: /Users/Mariusz/Sites/wiw_development/app/controllers/images_controller.rb: 7: `सूचकांक 'में

मेरी फाइलें इस तरह दिखती हैं:

1) एप्लिकेशन / मॉडल / image.rb

वर्ग छवि has_and_belongs_to_many: जोड़े
validates_presence_of: img_file_name
has_attached_file: img,: style => {: thumb => "100x100 #",: पेज => "400x320>"},: भंडारण =>: s3,: s3_credentials = "# {RAILS_ROOT} /config/s3.yml। "
समाप्त

2) config / s3.yml

बाल्टी: (मेरा बकायदा यहाँ)
access_key_id: (मेरा पता कुंजी आईडी यहाँ)
secret_access_key: (MY SECRET ACCESS KEY HERE)

मैं इसे कैसे काम कर सकता हूं?

उत्तर:

जवाब के लिए 9 № 1

C: /Ruby/lib/ruby/1.8/yaml.rb: 133: लोड में "- यह एक YAML त्रुटि है। आपके पास शायद एक बुरी तरह से स्वरूपित YML फ़ाइल है। इस कोड को अपनी स्क्रिप्ट / कंसोल में आज़माएं:

require "yaml"
my_hash = YAML::load File.read("#{RAILS_ROOT}/config/s3.yml")

नीचे मेरे काम के विन्यास से एक उदाहरण है:

  has_attached_file :data,
:styles => {
:small => "100x100#",
:medium => "400x400#",
:large => "640x480#"
},
:storage => :s3,
:s3_credentials => "#{RAILS_ROOT}/config/s3.yml",
:path => ":attachment/:id/:style.:extension",
:bucket => "xxx"

और yml फ़ाइल:

development:
access_key_id: ***
secret_access_key: ***

जवाब के लिए 0 № 2

You were right. My "e" text editor was saving the yaml file in a strange format with some additional characters. Everything is working right now. THANKS!


संबंधित सवाल
सबसे लोकप्रिय