Rails form_tag spanning partial和ActionController :: InvalidAuthenticityToken

时间:2009-11-03 04:11:08

标签: ruby-on-rails

使用:partial表示“form_tag”的开头,而“end”表示不同的:partial给出了

“编译错误”和“语法错误,意外的kENSURE,期待kEND”。

将“form_tag”更改为标准HTML“form”标记修复了该标记,但提供了“ActionController :: InvalidAuthenticityToken”。

2 个答案:

答案 0 :(得分:2)

添加

<%= token_tag %> 

在HTML表单标记修复问题之后。

答案 1 :(得分:0)

这是因为form_tag是一个块,并且结尾必须包含在同一个文件中。例如,以下代码是不可能的:

<强> foo.rb

 def some_method
   puts "test"
 require 'end'

<强> end.rb

 end

这是由于评估代码的顺序。