我正在使用此file uploader example for 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注释到我的代码中
提前致谢。
答案 0 :(得分:0)
当你说'整合'时,你的意思是我如何在视图或控制器方法中使用通知值?
如果是这样,您可以使用params [:notice]获取视图中的值或您要重定向到的控制器。
答案 1 :(得分:0)
这就是您将通知“整合”到您的回复中的方式
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