Antazy

12 Июнь 2009 г.

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 models import Party
PARTY_CHOICES = [(party.id, party.name) for party in Party.objects.all()]

Дальше в admin.py добавил admin.site.register(Party), и всё работает. Ура!

Но как бы не так, PARTY_CHOICES кэшируется в forms.py, то есть при добавление/изменении вечеринок в базе, форма меняется только после рестарта Джанги.

Решение оказалось ещё проще - использование forms.ModelChoiceField (forms.py):
...
party = forms.ModelChoiceField(queryset=Party.objects.all())

Теперь с ModelChoiceField всё работает как надо, форма меняется сразу после изменении в админке, но вот только остался вопрос с кэшированием в forms.py.
Кто-нибудь знает как сделать рекэш формы при изменении модели?

Ярлыки:

16 Май 2009 г.

Футболка для RuPyRu 2009

В Омске 6 июня пройдет очередная конференция по Ruby и Python
Решил в palemo.ru сделать себе прикольную футболку =)


Вот, что получилось: img_1.jpg, img_2.jpg

UPD:
Будете делать себе, можете взять deviantart.com/RuPyRu-Logotype...

Ярлыки: , , , ,

2 Апрель 2009 г.

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

Ярлыки: , , ,

8 Март 2009 г.

Бэкап mysql и восстановление из файла

Чтобы сделать бэкап mysql:
mysqldump --all --add-drop-table --all-databases --force -c \
--password=pass --user=name | gzip -9 > mysql_backup_file


Восстановление бэкапа из файла:
mysql < mysql_backup_file

Ярлыки: , , ,

22 Июль 2008 г.

RuPyRu 2008 Омск

В Омске 21 июня 2008 года побывал на конференции RuPyRu



(Случайно на хабре увидел пост про конференцию и решил не отстовать)

Ярлыки: , , ,

12 Май 2008 г.

Linux ДубльГИС 3.0 | 2gis 3.0 Ubuntu 8.04


Установка ДубльГИС 3.0 в линуксе (Ubuntu 8.04) (wine).

Скачиваем с сайта www.2gis.ru
  1. Оболочку программы 2GISShell-3.*.msi
  2. Данные справочника и карты 2GISData_*-*.msi

Необходимы wine и p7zip . Для убунты нужно выполнить команду:
sudo apt-get install p7zip-full

Установка оболочки 2gis 3.0
msiexec /i 2GISShell-3.*.msi
Установка справочника и карты ДубульГИС
  1. Разархивируем:
    7z x 2GISData_*-*.ms
  2. Опять распаковываем:
    7z x Sample.cab

  3. Находим файл *_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/

Ярлыки: , , , ,

20 Март 2008 г.

Тема для Drupal 6 “p3d”

Нарезал тему для Drupal 6.





В теме реализовано png alpha, использованы модули imagemenu и nice_menus.

.. конечно кроссбраузерность и валидация.

Ярлыки: , , , , , ,