gpt4 book ai didi

ruby-on-rails-3 - 带有Rails CRUD的最佳音频上传

转载 作者:行者123 更新时间:2023-12-02 22:55:25 25 4
gpt4 key购买 nike

我尝试在特定的Rails New simpleform中创建音频播放器。

一条简短的消息,我想发布带有音频按钮的翻转式抽认卡(实际上,我生成了平假名),以使用音频播放器收听单词。

我在问什么是上传音频文件的最佳解决方案?
实际上,我尝试使用Cloudinary视频存储服务来做到这一点。

我使用CarrierWave gem创建一个声音上传器,如下所示:

# encoding: utf-8

class SoundUploader < CarrierWave::Uploader::Base
include Cloudinary::CarrierWave

# Include RMagick or MiniMagick support:
# include CarrierWave::RMagick
# include CarrierWave::MiniMagick

# Choose what kind of storage to use for this uploader:
storage :file
# storage :fog

# Override the directory where uploaded files will be stored.
# This is a sensible default for uploaders that are meant to be mounted:
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end

# Provide a default URL as a default if there hasn't been a file uploaded:
# def default_url
# # For Rails 3.1+ asset pipeline compatibility:
# # ActionController::Base.helpers.asset_path("fallback/" + [version_name, "default.png"].compact.join('_'))
#
# "/images/fallback/" + [version_name, "default.png"].compact.join('_')
# end

# Process files as they are uploaded:
# process :scale => [200, 300]
#
# def scale(width, height)
# # do something
# end

# Create different versions of your uploaded files:
# version :thumb do
# process :resize_to_fit => [50, 50]
# end

# Add a white list of extensions which are allowed to be uploaded.
# For images you might use something like this:
# def extension_white_list
# %w(jpg jpeg gif png)
# end

# Override the filename of the uploaded files:
# Avoid using model.id or version_name here, see uploader/store.rb for details.
# def filename
# "something.jpg" if original_filename
# end

end

然后在我的模型中,我使用以下代码调用MountUploader(我调用的对象是声音):
class Hiragana < ActiveRecord::Base
belongs_to :user
has_many :favs, dependent: :destroy

mount_uploader :upload, ImageUploader

mount_uploader :sound, SoundUploader

end

上载是在“查看新建”中创建的

我的问题是如何调用上传?我的意思是我将这个可变的 @hiragana.sound放入我的代码中,但可以看看错误图片[!

最佳答案

他的意思是你必须改变这个:

    # Choose what kind of storage to use for this uploader:
storage :file
# storage :fog

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

对此:
    # Choose what kind of storage to use for this uploader:
# storage :file
# storage :fog

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

关于ruby-on-rails-3 - 带有Rails CRUD的最佳音频上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35657032/

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