JQuery AJAX размещения в неправильный URL в приложении рельсы - PullRequest
0 голосов
/ 20 декабря 2010
$.ajax({
 type: "POST",
 url: "analytics/test",
 data: 'correct=' + correct_or_incorrect + '&id=' + correctCharacter[3] + "'"
 });

Я использую это, чтобы опубликовать некоторую информацию в приложении rails. Проблема в том, что он просто отправляет сообщение в контроллер приложения.

Как я могу получить его, чтобы URL-адрес был :controller => 'analytics', :action => 'test'

Ответы [ 2 ]

9 голосов
/ 20 декабря 2010

Путь к вашему URL (analytics/test) является относительным, то есть он будет добавлен к «каталогу» URL-адреса, в котором вы работаете. Например. если вы звоните по номеру http://yourhost.com/analytics/demo,, вы позвоните по номеру http://yourhost.com/analytics/analytics/test,, который, вероятно, вам не нужен.

Добавьте косую черту в начало (чтобы вы получили /analytics/test) и все в порядке.

$.ajax({
    type: "POST",
    url: "/analytics/test",
    data: 'correct=' + correct_or_incorrect + '&id=' + correctCharacter[3] + "'"
});
2 голосов
/ 23 декабря 2010

Никто из ответивших не знает о рельсах и маршрутах ... по крайней мере, это то, что я предполагаю, потому что никто не приблизился к этому.

$.ajax({ 
    url: '/analytics.json', 
    type: 'POST', 
    dataType: 'json', 
    success: 'success' 
 });

Это ответ :) - делает меня оченьсчастливый!Два дня, чтобы получить его.

Проблема была из-за URL.У меня было :analytics, объявленное в routs.rb, но у меня не было правильного URL, и именно так rails работает с маршрутами, в частности, с маршрутизацией RESTful.xml или что-то еще, но вам нужно использовать это как расширение файла вместо использования .json

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...