Je reçois cette erreur lorsque j'essaie de télécharger à l'aide d'un trombone avec mon application de blog de rails. Je ne sais pas à quoi il fait référence quand il dit "MissingRequiredValidatorError". Je pensais qu'en mettant à jour post_params et en lui donnant: image, ce serait bien, car à la fois créer et mettre à jour utiliser post_params
Paperclip::Errors::MissingRequiredValidatorError in PostsController#create
Paperclip::Errors::MissingRequiredValidatorError
Extracted source (around line #30):
def create
@post = Post.new(post_params)
Ceci est mon 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
et c'est mon aide de poste
module PostsHelper
def post_params
params.require(:post).permit(:title, :body, :tag_list, :image)
end
end
Veuillez me faire savoir si je peux compléter du matériel supplémentaire pour vous aider.
validates_attachment :image, presence: true, content_type: { content_type: ["image/jpg", "image/jpeg", "image/png"] }
presence: true
la validation n'est pas obligatoire, j'ai donc exclu cette partie.do_not_validate_attachment_file_type
. Comme le dit Rdocs: grâce à un rapport d'Egor Homakov, nous avons pris des mesures pour empêcher les gens d'usurper les types de contenu et d'obtenir des données que vous n'attendiez pas sur votre serveur.Mettez simplement votre modèle:
https://github.com/thoughtbot/paperclip
la source
Besoin d'ajouter validates_attachment_content_type dans le modèle
Rails 3
Rails 4
la source
Assurez-vous que votre modèle de poste ressemble à ceci ...
la source
Je n'ai pas réussi non plus à faire fonctionner ces solutions. J'ai essayé Paperclip 3.1, mais mon application n'a pas pu continuer à me dire que mes extensions de fichier image n'étaient pas approuvées, même si elles étaient au format jpg.
J'ai finalement trouvé le succès avec la version 3.5.1.
la source