加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Ruby on Rails CarrierWave宝石是否与Ajax配合

发布时间:2020-12-16 19:45:04 所属栏目:百科 来源:网络整理
导读:由于某些原因,使用与Ajax的CarrierWave宝石似乎并不适用于我.我做错了吗?我遵循253载波波导轨迹,它没有 AJAX,但在我的应用程序中,我需要使用AJAX.这是我的代码: 在图像文件字段中选择jpeg后的参数列表: Parameters: {"item"={"remote_image_url"=""}} new
由于某些原因,使用与Ajax的CarrierWave宝石似乎并不适用于我.我做错了吗?我遵循253载波波导轨迹,它没有 AJAX,但在我的应用程序中,我需要使用AJAX.这是我的代码:

在图像文件字段中选择jpeg后的参数列表:

Parameters: {"item"=>{"remote_image_url"=>""}}

new.html.erb:

<%= form_for(@item,:url => create_item_path,:html => {:id => "create_item_form",:multipart => true}) do |f| %>
    <p>
      <%= f.file_field :image %>
    </p>
    <p>
      <%= f.label :remote_image_url,"or image URL" %><br />
      <%= f.text_field :remote_image_url %>
    </p>
    <%= f.submit "Save",:id => "save_button" %>
<% end %>

的application.js

$("#create_item_form").submit(function() {
    $.ajax({
      type: "POST",url: $(this).attr("action"),dataType: "script",data:  $("#destination_item").sortable('serialize') + "&" + $(this).serialize()
      });
      return false;
});

item.rb的

class Item < ActiveRecord::Base
  attr_accessible :description,:image,:remote_image_url
  belongs_to :user
  has_many :item_sub
  mount_uploader :image,ImageUploader
end

schema.rb

create_table "item",:force => true do |t|
    t.integer  "user_id"
    t.string   "title"
    t.string   "image"
    t.datetime "created_at"
    t.datetime "updated_at"
  end

我的gemfile中有载波宝石,我没有改变任何应用程序/ uploader / image_uploader.rb.

感谢你的帮助!

解决方法

没有使用像Uploadify这样的图书馆就没有办法了.这是因为XMLHttpRequest(AJAX)标准不支持文件上传.唯一的方法,你真的可以假的是使用iFrame与Flash. Uploadify是这些选项中最好的,它具有最好的文档.这是客户端必须做的(浏览器). Uploadify真的不是一个红宝石宝石,它的Flash和js的集合允许浏览器“假”.

在服务器端,您可以使用carrierwave来支持上传,但是您需要一种从客户端获取他们的方法.这是一个非常相似的问题,应该给你你需要的指示.

Rails Carrier Wave with JQuery Uploader

希望这可以帮助,

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读