0

嗨,我将 rails 视图从 erb 转换为 Haml。我面临的问题是当使用 form_for 时 haml 会引发 UNEXPECTED $end 错误。我确信我在 form_for 中很好地完成了空格缩进......即使我使用“每个执行”循环也会说同样的错误。如果我将haml恢复为erb,它工作正常。

我使用的 Rails 版本:2.3.2 & 我安装了 haml gem 2.2.19 以及 haml 插件。

我的控制器代码:

def new
    @user = User.new
end

我的查看代码:

.contentContainer.signup
 - form_for(@user) do |f|
4

4 回答 4

2

确保你的haml压痕是完美的。

.contentContainer.signup
  - form_for(@user) do |f|
    = f.text_field :name
于 2010-02-12T05:47:22.710 回答
0

您是否包含- end在您的模板中?Haml 会end为您处理 s,因此如果您添加自己的 s,它将无法正常工作。

你能粘贴你的整个模板吗(在一个代码块中,所以它的格式正确)?

于 2010-02-12T06:05:32.690 回答
0

还有一个很好的命令行工具可以使转换更容易:html2haml。它并不总是产生最漂亮的haml,但它确实有效。

嘿,甚至还有一个基于 Web 的表单:http ://html2haml.heroku.com/

一般来说,确保你的缩进是完美的。haml 对缩进非常讲究。如果您使用体面的编辑器(例如 textmate 或 vim),这将是一项简单的任务。

于 2010-02-15T17:55:26.173 回答
-1

如果文件中的最后一行是缩进的,则必须有一个额外的空行。

于 2010-02-13T23:39:54.307 回答