Django Form Choices: select options из БД
На одном сайте на Django весит форма регистрации на закрытые вечеринки, в общем обычный contact form, но только периодически меняется название этих вечеринок.
Так выглядит обычный ChoiceField (froms.py):
from django import forms
PARTY_CHOICES = (
(1, u'Вечеринка 1'),
(2, u'Вечеринка 2'),
)
class ContactForm(forms.Form):
name = forms.CharField(required=True)
phone = forms.CharField(required=True)
party = forms.ChoiceField(choices=PARTY_CHOICES)
Для того чтобы хранить данные в БД создал модель (models.py):
class Party(models.Model):
name = models.CharField('Название', max_length=200)
def __unicode__(self):
return u'%s' % (self.name)
И заменил в форме PARTY_CHOICES на:
from django import forms
from models import Party
PARTY_CHOICES = [
(party.id, party.name) for party in Party.objects.all()
]
class ContactForm(forms.Form):
name = forms.CharField(required=True)
phone = forms.CharField(required=True)
party = forms.ChoiceField(choices=PARTY_CHOICES)
Дальше в admin.py добавил admin.site.register(Party), и всё работает. Ура!
Но как бы не так, PARTY_CHOICES кэшируется в forms.py, то есть при добавление/изменении вечеринок в базе, форма меняется только после рестарта Джанги.
Решение оказалось ещё проще - использование forms.ModelChoiceField (forms.py):
...
party = forms.ModelChoiceField(queryset=Party.objects.all())
Теперь с ModelChoiceField всё работает как надо, форма меняется сразу после изменении в админке, но вот только остался вопрос с кэшированием в forms.py
Ярлыки: django
Футболка для RuPyRu 2009
В Омске 6 июня пройдет очередная
конференция по Ruby и PythonРешил в
palemo.ru сделать себе прикольную футболку =)

Вот, что получилось:
img_1.jpg,
img_2.jpgUPD:Будете делать себе, можете взять
deviantart.com/RuPyRu-Logotype...Ярлыки: conference, omsk, palemo.ru, python, t-shirt
Wine KOMPAS-3D LT V10 (linux, ubuntu)
При установки KOMPAS-3D LT V10 на Ubuntu через Wine (1.1.18) возникают ошибки:
\\ASCON\\KOMPAS-3D LT V10\\Bin\\klApp.DLL") not found
err:module:import_dll Library kCBU.DLL (which is needed by L"C:\\Program Files\\ASCON\\KOMPAS-3D LT V10\\Bin\\klApp.DLL") not found
err:module:import_dll Library klApp.DLL (which is needed by L"C:\\Program Files\\ASCON\\KOMPAS-3D LT V10\\Bin\\KOMPASLT.Exe") not found
err:module:import_dll Library MFC42u.DLL (which is needed by L"C:\\Program Files\\ASCON\\KOMPAS-3D LT V10\\Bin\\KOMPASLT.Exe") not found
err:module:import_dll Library kCBU.DLL (which is needed by L"C:\\Program Files\\ASCON\\KOMPAS-3D LT V10\\Bin\\KOMPASLT.Exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"C:\\Program Files\\ASCON\\KOMPAS-3D LT V10\\Bin\\KOMPASLT.Exe" failed, status c0000135
Решение проблемы:
$ wget http://www.kegel.com/wine/winetricks
$ sh ./winetricks vcrun6
В настройках $winecfg для библиотеки
msvcrt выбрать "сторонняя,встроенная" как на рисунке:
По мотивам winehq.orgЯрлыки: kompas, linux, ubuntu, wine
Бэкап mysql и восстановление из файла
Чтобы сделать бэкап mysql:
mysqldump --all --add-drop-table --all-databases --force -c \
--password=pass --user=name | gzip -9 > mysql_backup_file
Восстановление бэкапа из файла:
mysql < mysql_backup_file
Ярлыки: backup, mysql, snippets, work
В Омске 21 июня 2008 года побывал на конференции
RuPyRu
(Случайно на хабре увидел пост про конференцию и решил не отстовать)
Ярлыки: conference, omsk, python, ruby
Linux ДубльГИС 3.0 | 2gis 3.0 Ubuntu 8.04
Установка ДубльГИС 3.0 в линуксе (Ubuntu 8.04) (wine).
Скачиваем с сайта www.2gis.ru
- Оболочку программы 2GISShell-3.*.msi
- Данные справочника и карты 2GISData_*-*.msi
Необходимы
wine и
p7zip . Для убунты нужно выполнить команду:
sudo apt-get install p7zip-full
Установка оболочки 2gis 3.0msiexec /i 2GISShell-3.*.msi
Установка справочника и карты ДубульГИС- Разархивируем:
7z x 2GISData_*-*.msi
- Опять распаковываем:
7z x Sample.cab
- Находим файл *_DGDAT , например для Омска — Omsk_DGDAT .
Переименовываем в Omsk.dgdat , где вместо Omsk ваш город.
Копируем в папку где установлена оболочка программы, у меня /home/antazy/.wine/drive_c/Program Files/2gis/3.0/Omsk.dgdat
На сайте 2gis.ru рекомедуют запускать
grum.exe с ключем
-nomta .
По мотивам http://www.e1.ru/talk/forum/Ярлыки: 2gis, linux, ubuntu, wine, work
Тема для Drupal 6 “p3d”
Нарезал тему для Drupal 6.

В теме реализовано png alpha, использованы модули imagemenu и nice_menus.
.. конечно кроссбраузерность и валидация.
Ярлыки: drupal, imagemenu, modules, theme, w3c, web, work