Rails - 查看表示数据库中数据的图片

时间:2011-07-17 09:28:42

标签: ruby-on-rails actionview

我正在寻找一些想法如何让星星在这个例子中看到:

enter image description here

现在,我有一张桌子上有一个黑色星柱和一个灰色星柱。(在“Hüllenkontrolle”中,例如2个黑星的“2”和4个灰色星的“4”)。所以我考虑了一些显示另一张图片的内容,具体取决于数据库中的数字(1 = 1星,2 = 2星,3 = 3星,4 = 4星...)

我不知道在互联网上搜索什么,或者如何意识到不是数字会被观看,而是一些明星。有谁知道如何实现这个?


有关我的数据库模型的一些信息:http://img6.imagebanana.com/img/kwenevyz/beziehungen.png

  • 所有数据都在员工的html.erb中查看。
  • 黑色星星代表current_qualification-table(列“qualifiedstars”),灰色星星代表预期的资格表(列“qualifiedstars”)。 现在它用html.erb写成:

<% @employee.position.expected_qualifications.each do |expected_qualification| %>

<%= expected_qualification.qualificationstars %>

<%end%>


一些好消息!这似乎有效

<% @employee.position.skills.zip(@employee.position.expected_qualifications, @employee.current_qualifications).each do |skill, expected_qualification, current_qualification| %>
    <p>
    <% (current_qualification.istqualifikation).times do %>
            <%= image_tag("black.png") %>
    <% end %>
    <% (expected_qualification.sollqualifikation - current_qualification.istqualifikation).times do %>  
        <%= image_tag("grey.png") %>
    <% end %>
    </p>
<% end %>

这就是它现在在浏览器中的样子:

enter image description here

1 个答案:

答案 0 :(得分:5)

如果你有一个黑色和灰色星形的图像文件,请在你的视图中尝试这样的事情:

<% @employee.position.expected_qualifications.each do |expected_qualification| %>

<% @employee.current_qualification.qualificationstars.times do %>
<%= image_tag("black_star.png") %>
<% end %>

<% [expected_qualification.qualificationstars - @employee.current_qualification.qualificationstars].times do %>
<%= image_tag("grey_star.png")  %>
<% end %>

<% end %>

编辑:

图像进入“公共/图像”(Rails&lt; 3.1)或“app / assets / images”(Rails 3.1)

编辑2:使用您的型号名称。

(我建议在您的数据库中将“qualifiedstars”重命名为“stars”.qualification.qualificationstars是多余的,有点麻烦。)