J'ai donc une configuration Ruby on Rails avec Devise et Paperclip. J'ai réussi à convertir mes fichiers erb en HAML et j'ai toujours des problèmes lorsque j'essaie de mettre une entrée de pièce jointe dans la nouvelle vue d'enregistrement. J'ai pris les mesures appropriées pour faire la migration avec Paperclip, La table User a toutes les colonnes d'image appropriées, mais toujours obtenir une erreur d'exécution lorsque je mets l'entrée d'image sur la page. Je suis assez nouveau à Ruby on Rails (seulement environ un mois d'apprentissage et de screencasts et de cours) et je suis vraiment coincé. Je préférerais ne pas recommencer, car il a fallu du temps pour construire, mais j'espérais obtenir des réponses ici! Merci!RuntimeError - Aucune entrée trouvée pour le binaire
gem 'rails', '3.2.11'
gem 'jquery-rails'
gem 'devise'
gem 'simple_form'
gem "paperclip", "~> 3.0"
gem "haml"
Voici l'erreur:
Extracted source (around line #6):
3: = f.error_notification
4: = f.full_error :image_file_size, class: "alert alert-error"
5: = f.full_error :image_content_type, class: "alert alert-error"
6: = f.input :image, label: "Upload an image"
7: = f.input :name, :autofocus => true
8: = f.input :email
9: = f.input :password
app/views/devise/registrations/new.html.haml:6:in `block in _app_views_devise_registrations_new_html_haml___1664083891059168154_70305669109760'
app/views/devise/registrations/new.html.haml:2:in `_app_views_devise_registrations_new_html_haml___1664083891059168154_70305669109760'
est la vue de new.html.haml:
%h2 Sign up
= simple_form_for(resource, :as => resource_name, :url => registration_path(resource_name), html: {class: 'form-horizontal'}) do |f|
= f.error_notification
= f.full_error :image_file_size, class: "alert alert-error"
= f.full_error :image_content_type, class: "alert alert-error"
= f.input :image, label: "Upload an image"
= f.input :name, :autofocus => true
= f.input :email
= f.input :password
= f.input :password_confirmation
.form-actions
= f.submit "Sign up", class: "btn btn-primary"
= render "devise/shared/links"
Voici le modèle:
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable, :omniauthable
attr_accessible :name, :email, :password, :password_confirmation, :remember_me, :provider, :uid, :image
validates :description, presence: true
validates :user_id, presence: true
validates_attachment :image, presence: true,
content_type: { content_type: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif'] }, size: { less_than: 2.megabytes }
has_attached_file :image, styles: { medium: "320x240>"}
end
Oh et voici mon schéma DB:
add_index "referrals", ["user_id"], :name => "index_referrals_on_user_id"
create_table "users", :force => true do |t|
t.string "email", :default => "", :null => false
t.string "encrypted_password", :default => "", :null => false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer "sign_in_count", :default => 0
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string "current_sign_in_ip"
t.string "last_sign_in_ip"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.string "name"
t.string "provider"
t.string "uid"
t.binary "image", :limit => 1048576
t.string "image_file_name"
t.string "image_content_type"
t.integer "image_file_size"
t.datetime "image_updated_at"
end
add_index "users", ["email"], :name => "index_users_on_email", :unique => true
add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true
Oh une dernière chose, je n'installe ImageMagick sur ma machine OSX (10.8) avant d'installer paperclip
s'il vous plaît essayer '= f.input: image, comme:: Fichier, label: "Ajouter une image"' –
Merci Nash! Je pensais que j'ai effectivement utilisé comme: attribut de fichier, mais je suppose que j'ai raté cette partie. Vous êtes géniaux les gars! – Lazmeister