LINUX.ORG.RU

Сообщения jmp

 

Как изменить тип поля в GAE Django?

Форум — Web-development

Всем доброго дня и с праздником. У меня имеется следующий вопрос: Имеется следующая модель в джанге, поставляемой в GAE: файл: models.py

from google.appengine.ext import db
class commonProperty (db.Model):
    title               = db.StringProperty     (verbose_name = "Entry title", multiline = False)
    slug                = db.StringProperty     (verbose_name = "Entry title in URL string (slug)", multiline = False)
    parentId            = db.IntegerProperty    (verbose_name = "Parent category ID")
    # остальные элементы модели поскипаны
class fEntry (commonProperty):
    body                = db.TextProperty       (verbose_name = "Message body")
    whenChanged         = db.DateTimeProperty   (verbose_name = "When message was changed last time", auto_now = True)
    # остальные элементы модели поскипаны
    def someFetchMethod (self, someParam)
        return 'param:%s'%someParam
файл: forms.py
from google.appengine.ext.db import djangoforms
from myproj.main.models import fEntry
from django import forms

# Здесь делаем я хочу сделать форму на основании модели
class entryForm(djangoforms.ModelForm):
    # и таки делаю (то есть, форма успешно отрисовывается в шаблоне и обрабатывается с помощью метода fEntry.save() во views.py)
    class Meta:
        model = fEntry
        exclude = ['slug', ] # скипаем поле slug, отрисовывается только title, parentId и body
    # а вот здесь я хочу изменить тип поля parentId с TextInput (которое по-умолчнию создается Meta`ой) на HiddenForm
    def __init__(self, *args, **kwargs):
        super(entryForm, self).__init__(*args, **kwargs)
        self.fileds['parentId'].widget = HiddenInput()
Вроде бы все должно работать (то есть гугль утверждает, что у всех работает). Однако, выдается следующий трейсбек:
TypeError at /myproj/thread/9/vopros-1/
__init__() takes at least 2 arguments (1 given)
Request Method: 	GET
Request URL: 	http://127.0.0.1:8080/myproj/thread/9/vopros-1/
Exception Type: 	TypeError
Exception Value: 	__init__() takes at least 2 arguments (1 given)
Exception Location: 	~/gae/myproj/myproj/main/forms.py in __init__, line 19

Traceback (most recent call last):
File "~/google_appengine/lib/django/django/core/handlers/base.py" in get_response
  77. response = callback(request, *callback_args, **callback_kwargs)
File "~/gae/pycomm/myproj/main/views.py" in showThread
  34. 'responseBox' : entryForm()
File "~/gae/pycomm/myproj/main/forms.py" in __init__
  21. self.fileds['parentId'].widget = HiddenInput()

  TypeError at /myproj/thread/9/vopros-1/
  __init__() takes at least 2 arguments (1 given)
Используемые версии: GAE SDK: Version 1.4.1
Django: 0.96.4
ОС: Linux Debian Lenny
Что я делаю не так? И как сделать «так»?
То есть, понятно, что можно руками вписать это самое <input type=«hidden» name=«parentId».../>, но, все-таки очень хочется разобраться в том, как выставлять нужный виджет элементам формы.

jmp
()

Чтение файлов на ассемблере в AT&T-синтаксисе

Форум — Web-development

Собственно, сабж. Я давно хотел покопаться в ассемблере. Пока разобрался, как слать биты/байты в/из регистры/стек/ОЗУ, разобрал циклы и условные переходы. А вот с вызовом системных функций - беда. Если кому не лень, запостите, пожалуйста сюда кусок кода с открытием, чтением/записью нескольких байт, закрытием файла, именно в AT&T синтаксисе, ибо gcc :)

jmp
()

RSS подписка на новые темы