将红宝石嵌入HAML而不需要侧翼/前面的'标签'

时间:2015-05-29 22:57:43

标签: haml

当我输入时,我的ruby代码显示(并呈现为'Hello World',这是数据库中的内容):

%p= @task.notes

但是当我尝试这种方式时,rails会中断(Tasks#index中的NoMethodError):

%p= Some text before code @task.notes

当我尝试这个时,它只是向我显示我输入的内容(代码之前的某些文本= @ tasks.notes):

%p Some text before code = @task.notes

当我尝试这个时,它也只是向我显示我输入的内容(代码%= @ task.notes之前的一些文字):

%p Some text before code %= @task.notes

当我尝试这个时,它再一次向我显示我输入的内容(代码= @task.notes之前的一些文字):

%p Some text before code =@task.notes

但是当我尝试这个时它起作用(在代码Hello World之前的一些文本),但似乎很奇怪,没有办法只将代码放在文本旁边:

%div
  Some text before code
  = @task.notes

但是当我尝试这个时,我得到一个错误(任务#index中的Haml :: SyntaxError):

%div Some text before code
  = @task.notes

我不明白这里发生了什么的逻辑以及为什么我被迫将所有这些明显无意义的返回结合起来,以便在一些文本旁边生成我想要的代码。有人可以填写我如何在一些文本旁边包含一些ruby代码而不必包含所有这些回车?或者这就是Haml的方式?

1 个答案:

答案 0 :(得分:0)

您可以interpolate代码:

-# No =
%p Some text before code #{@task.notes}