You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Rails的HAML文件中创建关联Movie的Comment表单?

把关联Movie的Comment表单转成HAML写法

别担心,刚接触HAML有疑问太正常啦!我来帮你把你熟悉的ERB表单转换成对应的HAML版本~

首先,HAML的核心是缩进代替闭合标签/end,不用写<% %>这类ERB标签,直接用=来输出Ruby代码的结果。

你原来的ERB代码(我帮你补全了f.submit的小疏漏):

<%= form_for([@movie, @movie.comments.new]) do |f| %>
  <%= f.text_area :text, class: "form-control" %>
  <%= f.submit "发表评论", class: "btn btn-primary" %>
<% end %>

对应的HAML写法是这样的:

= form_for [@movie, @movie.comments.new] do |f|
  = f.text_area :text, class: "form-control"
  = f.submit "发表评论", class: "btn btn-primary"

几个小细节说明:

  • HAML里不需要写do...end的end,只要保持代码块内部的内容比form_for那行多缩进一级(通常是2个空格)就可以了
  • 所有需要输出到页面的Ruby代码(比如表单辅助方法、表单控件)前面加=
  • 哈希参数(比如class: "form-control")的写法和Ruby一致,不用额外修改
  • f.submit的文本你可以根据需求随便改,比如改成"提交评论"也完全没问题

内容的提问来源于stack exchange,提问作者jedi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:34:34