Я ужасно боролся за большую часть дня со следующей проблемой:
- У меня есть приложение rails 3.1 - работает нормально
- Я пытаюсь добавить некоторыеAjax к нему
Однако, независимо от того, что я пытаюсь, Rails настаивает на отправке неправильного типа контента в заголовке ответа.
#the form
= form_for @signup, :url => '/signup', :remote => true do |f|
= f.text_field :email, :class => 'email', :size => 26
= f.submit 'Notify me'
#In the controller
def create
respond_to do |format|
format.js { render :content_type => 'text/javascript', :layout => false}
end
end
#the JS file: create.js.erb
alert('HI!');
Это не работает, пока ядумаю, что должно.Изучая ответ сервера с помощью Firebug, он сообщает, что заголовок ответа имеет тип содержимого text/html
.Я полагаю, именно поэтому оно не работает (как и во вновь созданном приложении, используя тот же гем jquery-rails, оно отвечает заголовком text/javascript
.
Сервер говорит, что этоотвечая JS:
Processing by SignupsController#create as JS
Но почему-то отказывается отправлять правильный заголовок. Я теряюсь в том, где искать дальше.
Любая помощь или направление относительно того, где искать дальше, будетс благодарностью! Эрвин