我的帐户模型
IF (SELECT COUNT(*) FROM players WHERE email = (:e) > 0)
INSERT IGNORE INTO roster
(date, teamId, playerId)
(:d), (:t), SELECT id FROM players WHERE email =(:e)
ELSE
BEGIN
.. // havent got to this part yet. it follows the same logic as the one before
END
这很有效。但是,我需要has_many :articles
after_create :generate_default_articles
def generate_default_articles
article = articles.build(:title => 'User guide', :content => 'This is fake content', :author => 'Admin')
article.save
true
end
更复杂,而且比一些单词更长,即一个简单的html页面。所以我想把这些内容放在外部文件中。我该怎么做呢 ?我应该使用哪种格式的文件?
下面是我的最终代码,使用rii的答案和I18n的标题:
content
答案 0 :(得分:1)
这里有几个选项。如果content
属性是文本字段,则可以通过打开存储在系统中的文件来存储所有文本内容。您拥有的另一个选项是使用像carrier_wave或paper_clip这样的gem,并使用gem存储对文件的引用:https://github.com/carrierwaveuploader/carrierwave
https://github.com/thoughtbot/paperclip
宝石路线可能是最灵活的方式。
现在,如何在Ruby中打开文件?好吧,File类是你的朋友:
content = File.open("your_file.txt", "r+")
file.close
就文件类型而言,如果它只是您正在存储的文本,那么它应该是.txt或甚至是.html文件。您可以通过执行以下操作来访问文件路径:
file = "#{RAILS_ROOT}/public/html_file/html_file1.html"
希望有所帮助。