Paperclip :: Errors :: MissingRequiredValidatorError mit Rails 4
Bin ich immer diese Fehlermeldung wenn ich versuche zu laden mit Büroklammer mit meinem rails-Blog-app.
Nicht sicher, was es meint, wenn er sagt "MissingRequiredValidatorError"
Ich dachte, dass durch die Aktualisierung post_params und gibt es :Bild, es wäre in Ordnung, da beide erstellen und zu aktualisieren, verwenden Sie post_params
Paperclip::Errors::MissingRequiredValidatorError in PostsController#create
Paperclip::Errors::MissingRequiredValidatorError
Extracted source (around line #30):
def create
@post = Post.new(post_params)
Dies ist mein posts_controller.rb
def update
@post = Post.find(params[:id])
if @post.update(post_params)
redirect_to action: :show, id: @post.id
else
render 'edit'
end
end
def new
@post = Post.new
end
def create
@post = Post.new(post_params)
if @post.save
redirect_to action: :show, id: @post.id
else
render 'new'
end
end
#...
private
def post_params
params.require(:post).permit(:title, :text, :image)
end
- und dies ist meine posts Helfer
module PostsHelper
def post_params
params.require(:post).permit(:title, :body, :tag_list, :image)
end
end
Bitte lassen Sie mich wissen, wenn ich ergänzen, zusätzliches material, um Ihnen zu helfen, und mir helfen.
InformationsquelleAutor der Frage nadia | 2014-02-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beginnend mit
Paperclip version 4.0
alle Anlagen sind erforderlich, um eine content_type Validierung, eine file_name Validierung, oder explizit Zustand, dass Sie nicht gehen zu müssen.Büroklammer wirft
Paperclip::Errors::MissingRequiredValidatorError
Fehler, wenn Sie das nicht tun.In Ihrem Fall, können Sie fügen Sie die folgende Zeile zu Ihrer
Post
Modell, nach Angabehas_attached_file :image
Option 1: Überprüfen Inhaltstyp
-ODER - eine andere Möglichkeit
-ODER - noch eine weitere Möglichkeit,
ist die Verwendung regex für die Validierung der Inhalte geben.
Beispiel: so überprüfen Sie alle Bild-Formate, regex-Ausdruck angegeben werden kann, wie gezeigt, in
@LucasCaton Antwort
Option 2: Validierung mit dem Namen
Option 3: überprüfen nicht
Wenn für einige verrückt Grund (gültig aber ich kann mir nicht vorstellen, das man jetzt), Sie wollen nicht fügen Sie alle
content_type
Validierung und damit die Menschen, um Inhalte nachzuahmen-Typen und Daten empfangen, Sie hatten nicht erwartet, auf Ihrem server, fügen Sie den folgenden:Hinweis:
Geben Sie den MIME-Typen wie pro Ihre Anforderung innerhalb
content_type
/matches
oben genannten Optionen. Ich habe gerade ein paar Bild MIME-Typen für Sie, um mit zu beginnen.Referenz:
Finden Büroklammer: Sicherheits-Überprüfungen, wenn Sie noch brauchen, um zu überprüfen. 🙂
Könnten Sie auch zu tun haben mit dem spoofing-Validierung wird hier erläutert, https://stackoverflow.com/a/23846121
InformationsquelleAutor der Antwort Kirti Thorat
Setzen Sie einfach in Ihr Modell:
https://github.com/thoughtbot/paperclip
InformationsquelleAutor der Antwort Lucas Caton
Hinzufügen müssen validates_attachment_content_type im Modell
Rails 3
Schienen 4
InformationsquelleAutor der Antwort Arvind singh
Stellen Sie sicher, dass Ihre post-Modell sieht so aus...
InformationsquelleAutor der Antwort narush
Konnte ich nicht bekommen, eine dieser Lösungen zu arbeiten entweder. Ich habe versucht, Büroklammer 3.1, konnte aber nicht, dann ist meine app sagte mir immer wieder, meine Bild-Datei-Erweiterungen waren nicht zugelassen, auch wenn Sie jpg.
Fand ich endlich Erfolg mit der version 3.5.1.
InformationsquelleAutor der Antwort Ric