我搜索过类似帖子的类似帖子,但无法找出答案。这是一个新问题,提前道歉。
我想在初始化时向我的数据库添加记录,以便不断检查我在本地目录中的视频。请注意,此应用程序仅适用于本地开发,而不适用于部署。
我在这里犯了什么愚蠢的错误?
saved_videos_controller.rb
Dir.glob("#{ROOTPATH}/lib/videos/*.mp4").each do |item|
size = File.size(item)
@extension = File.extname(item)
name = File.basename(item)
@name = name[0...name.index(@extension)]
@rootpath = item[0..item.rindex('/')]
SavedVideo.create(:name => @name,:extension => @extension) unless size==0
end
def index
@saved_videos = SavedVideo.all
end
saved_video.rb
class SavedVideo < ActiveRecord::Base
include ActiveModel::Model
attr_accessor :filename, :extension
validates :filename, :extension, presence: true
def self.name
@name
end
def self.extension
@extension
end
end
schema.rb
ActiveRecord::Schema.define(version: 20150207072508) do
create_table "saved_videos", force: true do |t|
t.string "filename"
t.datetime "created_at"
t.datetime "updated_at"
t.string "extension"
end
答案 0 :(得分:0)
执行此操作的一种方法是将代码移动到config / initializers /中。即。
配置/初始化/ videos.rb
Dir.glob("#{ROOTPATH}/lib/videos/*.mp4").each do |item|
size = File.size(item)
@extension = File.extname(item)
name = File.basename(item)
@name = name[0...name.index(@extension)]
@rootpath = item[0..item.rindex('/')]
SavedVideo.create(:name => @name,:extension => @extension) unless size==0
end
您还可以创建一个可以打电话或安排的佣金。