ФорумПрограммированиеPythonDjango → Tastypie и ForeignKey, мудохаться на клиенте или на сервере?

Tastypie и ForeignKey, мудохаться на клиенте или на сервере?

  • AlexB

    Сообщения: 4288 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 6:59

    Итак, пусть у нас есть тестипайный ресурс с foreignkey

    
    class MyResource(ModelResource):
        fk = ForeignKey(MyFkResource, 'fk', full=False)
    

    Мы можем передавать full=False или full=True в зависимости от этого в ответе получаем

    
    objects": [{  
        "fk": "/api/fk/идишник",  
    

    или

    
    objects": [{  
        "fk": {  
            "id": идишник,  
            Все блядь остальные поля, resource_uri и прочее, прочеее  
    

    Допустим я хочу изменить значение FK в модели на клиете и сохранить ресурс. Фигня в том, что с первом случаем работать джаваскриптом с этим неудобно т.к. получил строку, приходится выцеплять идишник, заменять его итд. А вот втором случае, я имею оверхед, получаю дофига всего лишнего плюс, кода меняю что-то внутри дочернего объекта и сохраняю, переписывается не только родительска модель, но и связанная.

    В итоге вижу два пути. Накатать простенькую JS библиотеку, которая будет работать с этими тастипаевскими строками - уметь менять в них идишник как минимум. Или допилить тастипай, чтоб он умел возвращать нечто среднее:
    "fk": {"id": идишник}
    без всей лишней хуйни. Что думаете?

  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 10:17, спустя 3 часа 17 минут 40 секунд

    @alexb, Я за второй вариант, т.к. это менее @kostyl. )

    adw/0
  • kostyl

    Сообщения: 5199 Репутация: N Группа: Джедаи

    Spritz 20 апреля 2015 г. 11:18, спустя 1 час 1 минуту 30 секунд

    Я за второй вариант, т.к. это менее @kostyl. )

    @adw0rd, мне кстати не пришло это упоминание еще, это я так в непрочитанные зашел и увидел

  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 11:51, спустя 33 минуты 9 секунд

    Может из-за точки в конце?

    adw/0
  • Sinkler

    Сообщения: 9655 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 12:01, спустя 9 минут 58 секунд

    мне тоже последний раз не пришло. может из-за регистра?

  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 12:12, спустя 10 минут 29 секунд

    мне тоже последний раз не пришло. может из-за регистра?

    @Sinkler, fixed

    adw/0
  • Sinkler

    Сообщения: 9655 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 12:15, спустя 3 минуты 15 секунд

    @AdW0rD спасибо)

  • adw0rd

    Сообщения: 22902 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 12:17, спустя 2 минуты

    @AdW0rD спасибо)

    @Sinkler, работает)

    adw/0
  • phpdude

    Сообщения: 26614 Репутация: N Группа: в ухо

    Spritz 20 апреля 2015 г. 14:37, спустя 2 часа 19 минут 57 секунд

    вот это баг. ну как так можно

    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!