Rails wirft einenSchienen - nicht definierte Methode `‘
"*** NoMethodError Exception: undefined method `' for #<Marketplace::Item:0x000001019dd148>"
Nach einem .save oder .Gültig? auf @item (Beispiel unten), ich sehe nicht, wo das Problem ist, von meinem Rails Wissen würde ich sagen, dass eine Spalte oder eine Methode nicht richtig eingerichtet wurde, aber das Modell ist ziemlich gerade und da nicht viel in der Steuerung als Nun, könnte mein .valid? durch einige Attribute/Parameter verloren gehen?
item.rb:
class Marketplace::Item < ActiveRecord::Base
include Shared::AttachmentHelper
extend FriendlyId
belongs_to :musico
has_many :anuncios
has_many :item_images, :dependent => :destroy
#Paperclip
has_attachment :cover,
:styles => {
:large => "741x570>",
:medium => "470x611>",
:thumb => "235x",
:thumb_anuncio => "90x90#"
},
:convert_options =>{
:large => ["-strip","-quality 80"],
:medium => ["-strip","-quality 80"],
:thumb => ["-strip","-quality 80"]
},
:default_url => "missing-image.png"
validates_attachment :cover,
:content_type => { :content_type => ['image/jpeg', 'image/png', 'image/jpg', 'image/bmp'] },
:size => { :in => 0..8.megabytes }
#Opcoes do DropDown de STATUS
STATUS = [ "ATIVO",
"INATIVO"]
end
items_controller.rb
def create
@item = Marketplace::Item.new(item_params)
respond_to do |format|
byebug
if @item.save
if params[:images]
params[:images].each { |image|
@item.item_images.create(image: image)
}
end
format.html { redirect_to @item, notice: "Item criado." }
format.json { render json: @item, status: :created, location: @item }
else
format.html { render action: "new" }
format.json { render json: @item.errors, status: :unprocessable_entity }
end
end
end
Backtrace: http://pastebin.com/GrDywzKR
Bitte geben Sie mehr von der Backtrace auf der Exception. Das macht es leichter zu sehen, was das Problem ist. – Max
Fertig. http://pastebin.com/GDywzKR –
Da eine der nächsten Zeilen zu der Ausnahme in "FriendlyId :: Base" ist, würde ich damit beginnen. Ich bin mit dem Juwel nicht wirklich vertraut, aber [die Dokumentation] (https://github.com/norman/friendly_id/tree/5.0.5#rails-quickstart) scheint zu implizieren, dass du 'friendly_id' nennen sollst 'mit einem Attribut nach dem Einbinden/Erweitern des Moduls. An dieser Stelle würde ich vorschlagen, ein wenig zu experimentieren: Geht der Fehler weg, wenn Sie die Zeile "extend FriendlyId" entfernen oder wenn Sie die Konfiguration hinzufügen? Geht es weg, wenn Sie den Aufruf "validates_attachment" entfernen? – Max