gpt4 book ai didi

javascript - 如何将 Froala Editor 文件上传与 Rails 4.2 集成

转载 作者:行者123 更新时间:2023-11-28 18:57:56 26 4
gpt4 key购买 nike

在我的 Rails 4.2 应用程序中,我想使用 Froala Editor 上传大约 20-50 个文档 (pdf/docx/rtf/txt) 并将上传的文档保存在路径 /中公共(public)/媒体/文档。我想将上传内容发布到 /admin/media/documents#upload。理想情况下,当我单击编辑器中的文件上传按钮时,我还想从已上传的文档中进行选择。

在发生这种情况的表单上,我有一些像这样开始的 JavaScript:

javascript:   $('#page_content').editable({
imageUploadURL: '/admin/media/documents/', /not sure about this
inlineMode: false,
theme: 'royal',
// Set custom buttons with separator between them.
buttons: ['html', 'sep', 'undo', 'redo', ...

有人可以帮我解决拼图中缺失的部分吗?

最佳答案

您需要添加

javascript:   $('#page_content').editable({
imageUploadURL: '/admin/media/documents/',
imageUploadMethod: 'POST'
}

以载波为例:Carrierwave ,你可能需要仔细阅读

将 gem 添加到您的 Gem 文件中

gem 'carrierwave'

然后

bundle install

通过Carrierwave创建 uploader 模型

rails g uploader Image

它看起来像这样:

-- app/model/uploader/image_uploader.rb
class ImageUploader < CarrierWave::Uploader::Base

storage :file

def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
end

它将在app/model/uploaders中生成image_uploader.rb

在您的文档模型中:

class document < ActiveRecord::Base
mount_uploader :picture, ImageUploader
end

所以现在您需要创建一条上传路线,从您的路径来看,它可能看起来像=>

-- config/route.rb

resource :admin do
resource :media do
post 'documents' => 'documents#upload'
end
end

在您的文档中,您需要执行上传操作,以节省时间并获得清晰的答案。我将跳过 csrf token 验证。

class DocumentsController < ApplicationController
skip_before_filter :verify_authenticity_token

...
# you need you adjust your code.
def upload
@document = admin.media.documents.new
@document.picture = params[:file]
@document.save

respond_to do |format|
format.json { render :json => { status: 'OK', link: @document.picture.url}}
end
end
...
end

希望这能清楚地解释这个问题。

关于javascript - 如何将 Froala Editor 文件上传与 Rails 4.2 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33249019/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com