Django — свободный фреймворк для веб-приложений на языке Python
0
u'Повторите Емайл: '), widget=forms.widgets.HiddenInput())
u'Биография'), initial='Введите вашу биографию', widget=forms.widgets.Textarea())
Edited vladka (Aug. 24, 2010 22:46:21)
Offline
0
Вы можете видеть в данном примере, что метод save() установит значения для всех полей, не только для name. Если в вашем случае, остальные поля могут изменяться другими процессами, правильнее будет изменять толькополя, которые этого требуют. Для этого следует использовать метод update() объектов QuerySet. Пример:
>>> Publisher.objects.filter(id=52).update(name='Apress Publishing')
SQL код будет более эффективным и не сможет вызвать «гонки»:
UPDATE books_publisher SET name = 'Apress Publishing' WHERE id = 52;
Метод update() имеется у каждого QuerySet и это означает, что вы можете изменять множество записей за раз. Вот так вы можете изменить в поле country значение «U.S.A.» на «USA» для каждой записи Publisher:
>>> Publisher.objects.all().update(country='USA') 2
Метод update() вернул значение — целое, представляющее количество изменённых записей.
Edited fenume (Aug. 26, 2010 20:57:32)
Offline