Ajax-запрос с использованием jQuery в Rails - PullRequest
1 голос
/ 03 июня 2010

Я отправляю запрос Ajax, используя jQuery. Что происходит, я получаю сообщение об ошибке «Метод 405 не разрешен». Я просто публикую форму, которая получит детали из формы и вставит их в БД. Просто обычный материал. Я использую WEBrick, который поставляется по умолчанию с пакетом rails. Может кто-нибудь, пожалуйста, скажите мне, как это исправить.

Это код, который запускает запрос Ajax

$. Post ($ (this) .attr ("action") + ".js", $ (this) .serialize (), null, "script");

Response Headers
Cache-Control   no-cache
Allow   GET, PUT, DELETE
Content-Type    text/html; charset=utf-8
Content-Length  9502
Server  WEBrick/1.3.1 (Ruby/1.9.1/2009-12-07)
Date    Wed, 02 Jun 2010 20:41:33 GMT
Connection  Keep-Alive

Request Headers
Host    localhost:3000
User-Agent  Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3
Accept  application/json, text/javascript, */*
Accept-Language en-us,en;q=0.5
Accept-Encoding gzip,deflate
Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive  115
Connection  keep-alive
Content-Type    application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With    XMLHttpRequest
Referer http://localhost:3000/viewspot/3
Content-Length  141
Pragma  no-cache
Cache-Control   no-cache

Ответы [ 2 ]

0 голосов
/ 03 июня 2010

Я узнал, что это та же самая ошибка политики происхождения. jQuery $ .ajax (), $ .post отправляет «OPTIONS» как REQUEST_METHOD в Firefox

0 голосов
/ 03 июня 2010

Почему вы используете non-restful URL для создания комментария? Можно ли использовать обычное действие Create, предоставляемое rest? Я действительно рекомендую, и это облегчает мысли.

Если вы можете сделать это, этот метод form_for должен выполнить свою задачу:

<% form_for Comment.new do |f| %>
...