1

Recipe モデルと RecipePhoto モデルがあります。新規レシピ作成時に縮小画像のサムネイルを表示したい。jquery-file-upload で写真をアップロードします。問題は、アップロードされた写真のIDを取得する方法がわからないことです。

例:

ユーザーが新しいレシピを作成しています。彼は写真をロードしてサーバー上でトリミングし、レシピを送信する前にサムネイル プレビューを表示します。

レシピ_コントローラー.rb

 def new
    @recipe = Recipe.new
    @recipe_photo = RecipePhoto.new
  end

レシピ/new.html.slim

= simple_form_for @recipe, :html => {:class => 'add-recipe-form'} do |recipe|
  .form-inputs
    = recipe.input :title

  .form-actions
  = recipe.submit "Create recipe"

= form_for @recipe_photo do |f|

  .form-inputs
    = f.label :image, "Upload paintings:"
    = f.file_field :image, multiple: false

Recipe_photo.js.coffee (ここでは、record_id ではなく、ファイル名のみを取得できます)

$ ->
  $('.new_recipe_photo').fileupload
    dataType: "script"
    done: (e, data) ->
      console.log data.files[0], data.files[0].name

レシピ_写真.rb

class RecipePhoto < ActiveRecord::Base
  attr_accessible :recipe_id, :image

  belongs_to :recipe

  mount_uploader :image, RecipeImageUploader


end
4

0 に答える 0