Ruby on Rails:在视图中显示模型属性
问题描述:
所以我创建了一个用户模型和一个商店模型。我遇到显示已在我的数据库中创建的商店名称的问题。这是一个非常愚蠢的问题,有一个非常简单的解决方案,但我无法弄清楚我做错了什么。因此,这里是我的用户控制器,在那里我找到了商店,我想显示:Ruby on Rails:在视图中显示模型属性
def show
@user = User.find(params[:id])
@store = Store.find(1)
end
,这里是视图:
<% provide(:title, @user.username) %>
<div class="row">
<aside class="col-md-4">
<section class="user_info">
<h1>
<%= gravatar_for @user %>
<%= @user.username %>
</h1>
</section>
</aside>
</div>
<li><% @store.name %></li>
因此,用户的名称显示出来,没有任何问题存在,但出于某种原因,商店的名字没有出现。我知道在数据库中有一个ID为1的商店。任何帮助在这里将不胜感激!
答
输出内容与雇员再培训局,你需要一个=
添加到ERB块:
<%= @store.name %>
答
让它这样,
<li><%= @store.name %></li>
答
让我们来看看这ERB
标签做什么:
<%= %> # Prints the attribute value.
Welcome to <%= @store.name %>!
<% %> # Executes the code.
<ul>
<% @stores.each do |store| %>
<li><%= store.name %></li>
<% end %>
</ul>
<%# %> # Comments out the code.
<%# This is just a comment... %>
Rails扩展了ERB,所以你可以使用这个快捷键来抑制新的l ine:
<% -%> # Avoids line break after expression.
<ul>
<% @stores.each do |store| -%>
<li><%= store.name %></li>
<% end %>
</ul>
有待进一步研究,请参阅here。