Я немного играю с приложениями с тяжелым клиентом.Django, Tastypie и получение новых данных объекта
Представьте меня есть эта модель:
class Category(models.Model):
name = models.CharField(max_length=30)
color = models.CharField(max_length=9)
Im используя knockoutjs (но я предполагаю, что это не важно). У меня есть список (observableArray) с категориями, и я хочу создать новую категорию.
Я создаю новый объект, и я нажимаю его на список. Все идет нормально.
Как насчет сохранения его на моем дБ? Поскольку я использую tastypie, я могу сделать POST в '/ api/v1/category /' и voilà, новая категория находится в БД.
Хорошо, но ... Я не обновляю страницу, поэтому ... если я хочу обновить новую категорию, как я это делаю?
Я имею в виду, когда я получаю категории, я могу сохранить идентификатор, чтобы я мог сделать put в '/ api/v1/category/id' и сохранить изменения, но ... когда создаю новую категорию , DB присваивает ему идентификатор, но мой javascript еще не знает этого идентификатора.
другими словами, рабочий процесс что-то вроде:
сделать получить> раздвинуть существующие объекты (с их идентификаторами) в списке> создать новую категорию> нажмите на него в списке> сохранить существующую категорию (категория не имеет идентификатора на javacript)> отредактируйте категорию> Как сохранить изменения?
Итак, мой вопрос: какой общий путь? Я подумал о том, чтобы отправить категорию и как-то восстановить идентификатор, и назначить его моему объекту на js, чтобы потом его модифицировать. Проблема в том, что создание POST на сервере ничего не возвращает.
В прошлом я делал что-то подобное, отправлял объект через сообщение, сохранял его, извлекал и отправлял обратно, по методу успеха извлекал идентификатор и назначал его объекту js.
Спасибо!