我有一个Django管理员表单.现在我想根据我的模型用数据填充它的初始字段.所以我尝试了这个:
class OrderForm(forms.ModelForm):
class Meta:
model = Order
email = CharField(initial="null", widget=Textarea(attrs={'rows': 30, 'cols': 100}))
def __init__(self, *args, **kwargs):
self.request = kwargs.pop('request', None)
products = kwargs['instance'].products.all()
self.message = purchase_message % (
"".join(["<li>" + p.name + ": " + str(p.price) + "</li>" for p in products]),
reduce(lambda x, y:x + y.price, products, 0)
)
# and here I have a message in self.message variable
super(OrderForm, self).__init__(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)
此时我不知道如何访问电子邮件字段以在呈现窗口小部件之前设置它的初始值.我怎样才能做到这一点?
我只想用 Flask-sqlalchemy 创建和测试数据库。已成功创建数据库。我的代码:
class Entry(db.Model):
id = db.Column(db.Integer, primary_key=True)
occurences = db.Column(db.String(80), unique=True)
a = Entry('run.py:27')
Run Code Online (Sandbox Code Playgroud)
错误:
a = Entry('run.py:27')
TypeError: __init__() takes 1 positional argument but 2 were given
Run Code Online (Sandbox Code Playgroud)
如果我尝试在没有参数的情况下执行此操作,程序将返回:
qlalchemy.exc.OperationalError: (sqlite3.OperationalError) no such table: entry [SQL: 'INSERT INTO entry (occurences) VALUES (?)'] [parameters: (None,)]
Run Code Online (Sandbox Code Playgroud)
错误开始于
db.session.commit()
Run Code Online (Sandbox Code Playgroud) 我想在 mybaiohttp.web应用程序中使用 JSON 序列化。但是我还没有在aiohttpUniverse 中找到用于该任务的任何库。
如果有使用serilizers任何问题django-rest-ramework与aiohttp?
django serialization python-3.x django-rest-framework aiohttp