【发布时间】:2014-09-03 03:03:27
【问题描述】:
我正在尝试为我的液体主题语言构建一个表单块。我的方法基于this answer。答案似乎不完整。
问题是防止伪造和其他一些方法不可用。导致错误:
Liquid error: undefined method `protect_against_forgery?' for #
这是我的代码:
class LiquidFormTag < Liquid::Block
include ActionView::Context
include ActionView::Helpers::FormHelper
def initialize(tag_name, markup, tokens)
super
end
def render(context)
form_tag("#") do
super
end
end
end
Liquid::Template.register_tag('liquid_form', LiquidFormTag)
有谁知道我如何添加protect_against_forgery 方法来做这个类?
编辑:这是错误输出:
编辑 2:
这是我的 Liquid 代码的相关部分:
{% ticket_form %}
{% for offer in event.offers %}
<div class="well well-sm">
<div class="row">
<div class="col-xs-3 col-sm-5 col-md-6 col-lg-7">
<h5>{{offer.name}}</h5>
</div>
<div class="col-xs-9 col-sm-7 col-md-6 col-lg-5 pull-right">
<div class="input-group">
<span class="input-group-addon">{{offer.price}}</span>
<input type="email" class="form-control tickets-count" cols="2" id="exampleInputEmail1" placeholder="0">
<span class="input-group-btn">
<button type="button" class="btn btn-default"><i class="fa fa-plus"></i></button>
<button type="button" class="btn btn-default"><i class="fa fa-minus"></i></button>
</span>
</div>
</div>
</div>
</div>
{% endfor %}
{% endticket_form %}
【问题讨论】:
标签: ruby-on-rails forms ruby-on-rails-4 liquid csrf-protection