0
У меня есть некоторые проблемы при работе с рельсами, любая помощь будет оценена по достоинству. У меня есть действие,ошибки проверки в рельсах
def submit_solution
@event = Event.find(params[:id])
@gallary = @event.gallaries.new
end
и от этого он идет к просмотру
<%= form_for @gallary do |f| %>
<%= render 'shared/error_messages', object: @gallary %>
<div class="field">
<%= f.label :image %><br>
<%= f.file_field :image %>
</div>
<div>
<%= hidden_field_tag(:event_id, @event.id) %>
<%= f.submit 'Upload', class: "btn btn-primary", controller: 'events', action: 'image_upload'%>
</div>
<% end %>
теперь, если я загрузить файл, то он плавно работает, но когда я представить его без загрузки файла. не отображая ошибки проверки. это дает ошибку
param is missing or the value is empty: gallary
моего Gallary Params
def gallary_params
params.require(:gallary).permit(:image, :event_id)
end
мое image_upload действие
def image_upload
@event = Event.find(params[:event_id])
@gallary = @event.gallaries.build(gallary_params)
if @gallary.save
flash[:success] = "Image uploaded"
redirect_to controller: 'events', action: 'event_info', id: @event.id
else
flash[:danger] = "error while uploading image"
redirect_to controller: 'events', action: 'submit_solution', id: @event.id
end
end
кто-нибудь может сказать мне, почему это происходит ??
Опубликуйте image_upload действия – bkunzi01
Проверьте ваш Params, которые в настоящее время представлены. ': gallary' не отправляется. – jdgray
@jdgray да, они не есть, но в случае, когда я загружаю файл, его отправляют. я просто хочу знать, почему это поведение. он должен по крайней мере представить: gallary be nil – whishky