Ruby on rails 如何将3个变量插入到同一个表格单元格中,并用“"/&引用;

Ruby on rails 如何将3个变量插入到同一个表格单元格中,并用“"/&引用;,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想在同一个表单元格中添加三个变量,并用a/分隔它们,因此BR/BA列将有一个如下条目:2/2/0,下面是我的微弱尝试,当然返回语法错误,我该怎么做?谢谢,亚当 <table class="listing" summary="Property list"> <tr class="header"> <th>Property Address</th> <th>Price</th> <th>Sq Ft&l

我想在同一个表单元格中添加三个变量,并用a/分隔它们,因此BR/BA列将有一个如下条目:2/2/0,下面是我的微弱尝试,当然返回语法错误,我该怎么做?谢谢,亚当

<table class="listing" summary="Property list">
<tr class="header">

  <th>Property Address</th>
  <th>Price</th>
  <th>Sq Ft</th>
  <th>BR/BA</th>
  <th>Type</th>
</tr>
<% @properties.each do |property| %>
<tr>

  <td><%= link_to(property.address, {:action => 'show', :id => property.id}) %></td>
  <td class="center"><%= property.price %></td>
  <td class="center"><%= property.sq_ft %></td>
  <td class="center"><%= {property.bedrooms "/" property.bathrooms "/" property.half_bathrooms} %></td>
  <td class="center"><%= property.property_type %></td>
</tr>
<% end %>

物业地址
价格
平方英尺
BR/BA
类型
'show',:id=>property.id})%>

[物业。卧室,物业。浴室,物业。半个浴室]。加入(“/”)


假设每个属性/方法都返回一个字符串。

[property.beddrooms,property.bathroms,property.half\u bathroms]。join(“/”)


假设每个属性/方法都返回一个字符串。

在Ruby中连接字符串是通过
+
完成的

property.beddrooms+“/”+property.bathroms+“/”+property.half_卫生间


另外,一般来说,每当你在你的问题“我有语法错误”中发帖的时候,如果你把那些语法错误都发了出来,那会很有帮助。

在Ruby中连接字符串是用
+
完成的

property.beddrooms+“/”+property.bathroms+“/”+property.half_卫生间

另外,一般来说,任何时候你在你的问题“我有语法错误”中发布,如果你发布这些语法错误是什么,这将是很有帮助的。

你可以添加3个字段

attr_accessor :bedrooms, :bathrooms, :half_bathrooms

before_save :combine_cols

def combine_cols
    self.brba = "#{bedrooms}/#{bathrooms}/#{half_bathrooms}"
end

def brba=(val)
    bedrooms, bathrooms, half_bathrooms = val.split('/')
end
这只是我的想法,因此可能无法正常工作。

您可以添加3个字段

attr_accessor :bedrooms, :bathrooms, :half_bathrooms

before_save :combine_cols

def combine_cols
    self.brba = "#{bedrooms}/#{bathrooms}/#{half_bathrooms}"
end

def brba=(val)
    bedrooms, bathrooms, half_bathrooms = val.split('/')
end

这只是我的想法,所以可能无法完全按照原样工作。

只需在每个变量之间单独放置一个“/”,即在每个变量周围。谢谢Dave,刚刚尝试了一下,结果成功了,唯一的问题是引号是不必要的,并给出了这个输出5“/”6“/”1,但在删除它们之后,只使用了/它看起来不错:5/6/1,干杯,Adam必须在每个变量之间单独放置一个“/”,即在每个变量周围。谢谢Dave,刚刚尝试了一下,它成功了,唯一的问题是引号是不必要的,并给出了这个输出5“/”6“/”1,但在删除它们之后,只使用了/它看起来很好:5/6/1,干杯,Adam他们是表中的整数,但这非常有效,非常感谢他们是表中的整数,但这非常有效,非常感谢Hanks的答案,另一个答案尝试起来更快,第一次就有效了,所以没有尝试这个,无论如何,谢谢这很好。我注意到你的问题实际上比我最初想的要简单得多,但我已经写了这样一句话:谢谢你的答案,另一个答案尝试起来更快,而且第一次就成功了,所以不要尝试这个,谢谢你。好的。我注意到你的问题实际上比我最初想象的要简单得多,但我已经写了这样一篇文章:因为你的一个或多个属性是数字,当你应用“+”操作符时,Ruby假设你在做加法,然后当你试图将字符串添加到数字时会抱怨。如果要使用此方法,请首先对属性调用.to_s。由于一个或多个属性是数字,因此当应用“+”运算符时,Ruby会假定您正在进行加法,然后在尝试向数字添加字符串时会发出抱怨。如果要使用此方法,请首先在属性上调用。