[英]Create a form that fills in fields within standard Python + Django code
朋友,我搜了很多東西,找不到了,所以我決定在這里問。
我需要在Django(Python)制成的頁面上創建一個表單,該表單將基於“骨骼” Python代碼創建一個文件,並僅更改以粗體顯示的特定字段並保存。
遵循代碼“骨骼”。
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
** Field1 ** = []
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
** Field2 ** = []
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
** Field3 ** = []
我將創建一個包含以下字段的表單頁面:Field1,Field2和Field3,它們將填充以下信息:
字段1 =名稱字段2 =年齡字段3 =性別
生成的框架代碼應如下所示:
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
** Name ** = []
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
** Age ** = []
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
** Sex ** = []
有人可以給我一種制作方法的方法嗎?
如果我理解您的問題,則如下所示的函數(在驗證后由您的表單處理程序調用)可以使您了解如何執行此操作:
from django.template import Template, Context
def make_skeleton(form_data):
context = Context({'Name': form_data['Field1'], 'Age': form_data['Field2'], 'Sex': form_data['Field3']})
template = Template('''
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
{{ Name }} = []
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
{{ Age }} = []
@staticmethod
def required_slots (tracker: Tracker) -> List [Text]:
{{ Sex }} = []
''')
with open('/path/to/skeleton.py', 'wt') as fobj:
fobj.write(template.render(context))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.