Удалите нежелательный div из любой сгенерированной из формы authenticity_token - PullRequest
2 голосов
/ 28 января 2011

Это должно быть легко, но я просто не могу найти ответ!Мои Rail Rail Forms генерируют div, от которого я хочу избавиться

Это div, который рельсы генерируют для меня

   <div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="&#x2713"/><input name="authenticity_token" type="hidden" value="Z6UAdFYt3v8d1lx4BNXq5td3OMJ223i+ruKM8Ldb+5s=" /></div>

Я посмотрел некоторые предварительные вопросы, которые предлагали мнеиспользуйте form_authenticity_token

Где и как в коде я могу использовать вместо form_authenticity_token?

1 Ответ

1 голос
/ 04 июля 2011

Какую версию Rails вы используете?

Я не знаю, почему вы хотите это сделать. Если это проблема CSS, вы можете быть более конкретным. Мне никогда не нужно было этого делать. Однако ...

Способ сделать это в 3.0.9 - создать инициализатор и добавить следующий код:

module ActionView
  module Helpers
    module FormHelper
        def extra_tags_for_form(html_options)
          snowman_tag = tag(:input, :type => "hidden",
                            :name => "utf8", :value => "&#x2713;".html_safe)

          method = html_options.delete("method").to_s

          method_tag = case method
            when /^get$/i # must be case-insensitive, but can't use downcase as might be nil
              html_options["method"] = "get"
              ''
            when /^post$/i, "", nil
              html_options["method"] = "post"
              token_tag
            else
              html_options["method"] = "post"
              tag(:input, :type => "hidden", :name => "_method", :value => method) + token_tag
          end

          tags = snowman_tag << method_tag
          content_tag(:span, tags, :style => 'margin:0;padding:0;display:inline')
        end
  end
end
...