【发布时间】:2020-04-11 10:55:39
【问题描述】:
背景与问题
在我的 Rails 应用中,用户可以创建自己的名字并选择性别。在他们的个人资料页面上,他们的姓名和性别都已正确显示。接下来,我想根据他们的性别改变他们名字的颜色,而不是同时显示名字和性别,但到目前为止效果不佳。如果有人教我,我将不胜感激。
用户/edit.html.erb
<%= form_tag("/users/#{@user.id}/update", {multipart: true}) do %>
<table>
<p>User name</p>
<input name="name" value="<%= @user.name %>">
<p>Sex</p>
<select name="sex" value="<%= @user.sex %>" selected><%= @user.sex %>>
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
<input type="submit" value="Submit">
</table>
<% end %>
用户/show.html.erb
<div class="user">
<div class="username"><%= @user.name %></div>
<div class="sex"><%= "(" + @user.sex + ")" %></div>
</div>
我尝试过的
我像这样编辑了Users/show.html.erb,但它不起作用。
<div class="username">
<%= @user.name %>
<% if @user.sex == "Male" %>
<% @user.name color: blue; %>
<% elsif @user.sex == "Female" %>
<% @user.name color: red; %>
<% else %>
<% @user.name color: black; %>
<% end %>
</div>
如果需要参考,我会添加更多代码。非常感谢。
版本
ruby 2.6.4p104 / RubyGems 3.0.3 / Rails 5.2.3
【问题讨论】:
-
“到目前为止效果不佳”对于我们无法为您提供帮助的错误描述不够准确。 什么不起作用? 如何不起作用?你的代码有什么问题?您收到错误消息吗?错误信息是什么?你得到的结果不是你期望的结果吗?你期望什么结果,为什么,你得到的结果是什么,两者有什么不同?您正在观察的行为不是期望的行为吗?期望的行为是什么,为什么,观察到的行为是什么,它们有何不同?
标签: css ruby-on-rails ruby ruby-on-rails-5