【发布时间】:2016-08-14 14:40:20
【问题描述】:
Started POST "/photos"
Processing by PhotosController#create as JSON
Parameters: {"utf8"=>"✓", "authenticity_token"=>"4ZYgROGmbmA7znV9JAG7rfzVhDLfcaDoAVHVJtvj0Il5EEgBDaPCBk99HLaVKxfl69o+cs/aZgpch2Hj5kR7dw==", "photo"=>{"user_id"=>"2"}, "file"=>#<ActionDispatch::Http::UploadedFile:0x007fd784bb2ef8 @tempfile=#<Tempfile:/tmp/RackMultipart20160814-13-1roacdt.JPG>, @original_filename="DSCN2462.JPG", @content_type="image/jpeg", @headers="Content-Disposition: form-data; name=\"file\"; filename=\"DSCN2462.JPG\"\r\nContent-Type: image/jpeg\r\n">}
[1mSELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1[0m [["id", 2]]
[1mROLLBACK[0m
Rendered photos/create.json.erb (0.0ms)
def create
@photo = current_user.photos.build(photo_params)
end
<%= form_for :photo, url: photos_path, html: {class: 'dropzone', id: 'dropform' } do |f| %>
<%= f.hidden_field :user_id, value: current_user.id %>
<% end %>
<script type="text/javascript">
$(document).ready(function(){
Dropzone.autoDiscover = false;
$("#dropform").dropzone({
maxFilesize: 5,
paramName: "photo[picture]",
addRemoveLinks: false,
});
});
</script>
当一张照片被添加到放置区时,它上面有一个复选标记,但它没有被输入到数据库中。没有提交。之前有一个错误:
ActionView::MissingTemplate - 缺少模板项/继续,应用程序/继续使用 {:locale=>[:en], :formats=>[:json], :variants=>[], :handlers=>[: erb, :builder, :raw, :ruby, :coffee, :arb, :haml, :jbuilder]}。
所以我制作了一个create.json.erb 文件,但我不知道该放什么。
此外,为了达到这一点,我不得不从photo.rb 中删除一些验证,因为我收到了include? 之类的错误消息...我猜是因为数据是在 json 中发送的,所以它无法读取验证.
【问题讨论】:
标签: ruby-on-rails json dropzone.js