簡體   English   中英

Ruby on Rails ,:注意

[英]Ruby on Rails, :notice

我正在使用Ruby on Rail的文件上傳器示例

我的控制器中有這段代碼。 而且我需要在某處有一個:notice參數,因此,在上傳文件時,通知將為“您已上傳文件”,如果出現錯誤,則說明“出了點問題”

def create
    p_attr=params[:upload]
    p_attr[:arraydb] = params[:upload][:upload].first if params[:upload][:upload].class == Array
    @upload = Upload.new(p_attr)

    respond_to do |format|
      if @upload.save
        @upload.update_attributes(:user_id => current_user.id)
        format.html {
          render :json => [@upload.to_jq_upload].to_json,
          :layout => false

        }

        format.json { render json: [@upload.to_jq_upload].to_json, status: :created, location: @upload }
      else

        format.html { render action 'new' }
        format.json{ render json: {name:(@upload.upload_file_name).split(".").first ,error: @upload.errors.messages[:upload_file_name]}, :status =>422}
      end
    end
  end

所以,我需要這樣的東西:

format.html { redirect_to(@upload, :notice => "LALALALALALA") }

但是我不知道如何將:notice集成到我的代碼中

提前致謝。

當您說“集成”時,您是說我如何在視圖或控制器方法中使用注意值?

如果是這樣,您可以只使用params [:notice]在視圖或您要重定向到的控制器中獲取值。

這是您將通知“整合”到響應中的方式

def create
  p_attr=params[:upload]
  p_attr[:arraydb] = params[:upload][:upload].first if params[:upload][:upload].class == Array
  @upload = Upload.new(p_attr)

  respond_to do |format|
    if @upload.save
      @upload.update_attributes(:user_id => current_user.id)
      format.html { redirect_to(@upload, :notice => "Success") }
      format.json { render json: [@upload.to_jq_upload].to_json, status: :created, location: @upload }
    else
      format.html { render action 'new', :notice => "Failed" }
      format.json{ render json: {name:(@upload.upload_file_name).split(".").first ,error: @upload.errors.messages[:upload_file_name]}, :status =>422}
    end
  end
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM