Мой интерфейс - это магистраль, а интерфейс - это кодигнитор с контроллером REST Фила Стерджона.Проблемы с сервером и базовым сервером.
У меня есть одна модель: Издательство и один сборник: Издатели
App.Collections.Publishers = Backbone.Collection.extend({
model: App.Models.Publisher,
url: '/restpublisher'
});
мой контроллер RestPublisher имеет:
function index_post(){
$this->response('in pulisher_post');
}
function index_delete(){
$this->response('in pulisher_delete');
}
function index_put(){
$this->response('in pulisher_put');
}
Проблема заключается в том, что на this.model.save(); Урл, который уволен: http://pubhub.local/restpublisher/1111, где 1111 - это идентификатор.
проблема заключается в том, что я получаю 404. если я просто имитировать запрос, поставленный на http://pubhub.local/restpublisher/ все работает хорошо, и я предполагаю, что я могу получить параметры из request-> положить()
есть способ решить эту проблему ?
вопрос 2: может кто-нибудь объяснить мне, почему название действия должно начинаться с индекса? Почему я не могу просто написать действие: publishers_post, что при сохранении коллекции получат данные?
Большое спасибо! Roy
Магистральная модель наследуется от url коллекции, поэтому у нее уже есть url: "/ restpublisher". это на самом деле не проблема вообще ... проблема в том, что позвоночник производит URL http: //pubhub.local/restpublisher/1111, где codeigniter ожидает URL: http: //pubhub.local/restpublisher без прикрепленного идентификатора – royB
Модель не наследует ничего (я не уверен, что термин * inherit * адаптирован в любом случае). URL-адрес оценивается «на лету» при необходимости, если он не указан в модели. Здесь, если вы укажете один, он больше не будет использовать URL-адрес коллекции. Именно то, что вам нужно. – Loamhoof
Я мог бы изучить его, но поскольку я никогда не использовал CodeIgniter, я думаю, что это будет довольно медленно, потому что я должен сначала понять механизмы REST API. – Loamhoof