5 haml ruby-on-rails ruby-on-rails-3.2
我有这样一个HAML:
- @my_patients_list.each do |patient|
%tr
%td= patient.name
%td= patient.date_of_birth
%td= patient.gender
%td= patient.brand_name.name
%td= patient.generics[0].name
Run Code Online (Sandbox Code Playgroud)
注意%td= patient.generics[0].name
我作弊的行 ,只打印第一个通用.但是每个patinet可以有多个泛型.因此,这部分是另一回事for-each loop.但是这个HAML我刚开始使用它并且仍然不习惯它.有人可以帮助我用HAML格式编写额外的循环,所以我可以替换它patient.generics[0].name ?
可能让我们用逗号分隔他们的泛型名称.
假设泛型是一个字符串数组,你想用新的td分开...
- @my_patients_list.each do |patient|
%tr
%td= patient.name
%td= patient.date_of_birth
%td= patient.gender
%td= patient.brand_name.name
- patient.generics.each do |gen|
%td= gen.name
Run Code Online (Sandbox Code Playgroud)
否则,如果您只想用逗号分隔...
- @my_patients_list.each do |patient|
%tr
%td= patient.name
%td= patient.date_of_birth
%td= patient.gender
%td= patient.brand_name.name
%td= patient.generics.map(&:name).join(',')
Run Code Online (Sandbox Code Playgroud)
如果您想用逗号分隔泛型名称,您可以尝试以下操作:
- @my_patients_list.each do |patient|
%tr
%td= patient.name
%td= patient.date_of_birth
%td= patient.gender
%td= patient.brand_name.name
%td= patient.generics.map(&:name).join(',')
Run Code Online (Sandbox Code Playgroud)
它将打印所有关联的通用名称,以逗号分隔。