Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何用HAML写这个_Ruby On Rails_Ruby_Haml - Fatal编程技术网

Ruby on rails 如何用HAML写这个

Ruby on rails 如何用HAML写这个,ruby-on-rails,ruby,haml,Ruby On Rails,Ruby,Haml,如何使用HAML编写以下内容 if @students.each do |student| # render a student end.empty? # @students was empty end 试试这个:- - unless @students.empty? - @students.each do |student| = render a student - else = render other stuff 你不会的。你会写信的 -如果@students.

如何使用HAML编写以下内容

if @students.each do |student|
  # render a student
end.empty?
  # @students was empty
end
试试这个:-

- unless @students.empty?
  - @students.each do |student|
    = render a student
- else
  = render other stuff

你不会的。你会写信的

-如果@students.any? -@students.each do|student| 给学生上课 -否则 =@学生是空的 更新

虽然我在文档中找不到对此的任何引用,但HAML实际上允许-end.method链接,因此您的代码应该按照编写的那样工作,添加一些破折号并删除最终的端点


看起来似乎可以在haml中使用end,尽管这并不广为人知。以下是最终代码:

- if @students.each do |student|
  # render a student
- end.empty?
  # @students was empty

如果有人知道HAML中end的使用记录在哪里,请更新此答案

您尝试过吗?已经是95%的火腿了。你只需要一些-,这不是我想要的。我想使用if..end.empty?骗局。你不能,哈姆尔没有尽头。而且,这是个坏把戏。只要使用if/else。我不认为这是个坏把戏。在我看来,它仍然很可读。此外,end似乎在HAML中也起作用。我试过了,一切似乎都很好。你试过了吗?HAML将提出一个HAML::SyntaxError,它非常清楚地表明您不需要在HAML中使用-end。闭嘴,您是绝对正确的。HAML确实允许-end,只要您将其他方法链接到它之外。
- if @students.each do |student|
  # render a student
- end.empty?
  # @students was empty