我是初学者,我似乎无法找到以下内容的教程:
我想为我的数据库中的每个电视节目添加一张图片,然后想在我的视图中调用@ show.image来显示图像(显示为电视节目)。 首先,列内容是什么? (我会假设一个字符串,但我想可能有更合适的东西) 第二,有没有办法让我不需要手动将URL添加到数据库中?就像我能以某种方式指定图像名称与电视节目的名称相同?
我的问题可能有点令人困惑,所以如果你不明白我的意思,请告诉我!
干杯
答案 0 :(得分:1)
你需要使用一个名为paperclip的宝石,它非常好。
Here is a link to the railscast
railscast相当陈旧,因此回形针是一个插件,不适用于rails 3.2 +。 下面的github链接将更有用
此外,宝石是开源的,您可以在github
上看到这一点答案 1 :(得分:0)
对于问题的第一部分,我假设您要将图像的URL存储在数据库中,而不是图像本身。 string
是用于此目的的精细列类型。
在第二部分 - 是的,如果您愿意,可以从其他数据生成图像文件名。可能最好的方法是在模型中,也许是这样的:
def image
"/images/#{self.name}.png"
end
然后在您看来,您只需在模板中调用@show.image
即可。