2015-10-14 4 views
1

Попытки реализовать angularjs Ruby On Rails приложения ...form_authenticity_token неопределенный рубин на рельсах

Я получаю эту ошибку, когда я пытаюсь вставить маркер подлинности в мое angularjs образует так:

<%= hidden_field_tag :authenticity_token, form_authenticity_token %> 

Я получаю эту ошибку

undefined local variable or method `form_authenticity_token' for #<#<Class:0x00000005953418>:0x007fcdc1205b20> 

Я бы очень хотел, чтобы включить токен аутентичности в мои угловые формы.

ответ

1

form_authenticity_token доступен только в контроллерах, но НЕ в представлениях. Вы получаете указанную ошибку, потому что пытаетесь использовать ее в своем представлении.

Вы можете определить переменную экземпляра в действие соответствующим контроллером как это:

# in controller 
def your_action 
    @form_auth_token = form_authenticity_token 
end 

И затем использовать @form_auth_token на ваш взгляд:

<%= hidden_field_tag :authenticity_token, @form_auth_token %> 
+1

Да, я был отчасти боится что-то вроде этого был бы ответом! В конце я принял ваш совет, объявил переменную экземпляра, а затем инициализировал scope.instance с помощью json_encoded массива кода auth. Работает отлично, хотя это немного работает. – l2silver

Смежные вопросы