ruby-on-rails - Rails - html block 的条件显示

标签 ruby-on-rails ruby-on-rails-5

在我的观点中,我使用了一种表单,其中包含一个呈现评论的 block 。我不想在创建新记录时运行它。所以,我尝试了这样的条件......

<% unless @annotation_id.nil? %>
<hr>
<div class="row">
  <div class="col-md-8">
    <h4>Comments</h4>
    <%= render @annotation.comments %>
  </div>

  <div class="col-md-4">
    <%= render 'comments/form' %>
  </div>

</div>
<% end %>

然而,这导致永远不会显示该 block - 当注释记录存在时也是如此。我做错了什么?

最佳答案

您没有表明您实际上已将 @annotation_id 设置为某物。

一种更简单的方法可能是使用 .new_record? 方法,例如:

<% unless @annotation.new_record? %>
  ...
<% end %>

关于ruby-on-rails - Rails - html block 的条件显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39294832/

相关文章:

ruby-on-rails - 命名空间 Controller 的未定义局部变量或方法 'current_user'

css - Assets 的 Rails 5 路由错误

mysql - Ruby on Rails 5 - seeds.rb

mysql - 日志 Rails 中未知的 SQL 平均查询

ruby-on-rails - 在 rails5 中使用 rails_admin 时出错

ruby-on-rails - 铁路协会 HABTM

ruby-on-rails - 将集合和自定义字段添加到选择框

ruby-on-rails - 设计邀请回调 : undefined method `before_invitation_created'

ruby-on-rails - ruby 方法中的返回值

mysql - Rails mySQL 中的绑定(bind)参数为空