我正在创建一个小型企业门户网站。将会有一个计算机数据库,其中包含有关公司中所有计算机的信息。我正在创建一个 WTForm 用于编辑计算机的属性。我有一个页面,其中包含包含计算机属性的表格。每行都有特殊的按钮。当用户按下其中一个时,我想显示一个带有从数据库获取默认值的表单的页面。当我在视图函数中编辑默认值时,出现错误:
\n\nThe CSRF token is missing.\nRun Code Online (Sandbox Code Playgroud)\n\n我的查看功能:
\n\ndef edit_computer(computer_id):\n if admin_can() or sysadmin_can():\n computer = models.Computer.query.filter_by(id=computer_id).one()\n user = models.User.query.filter_by(id=computer.user_id).one()\n email = user.email\n\n form = forms.EditComputerForm()\n form.email.default = user.email\n form.type_.default=computer.type_\n form.model.default = computer.model\n form.cpu.default = computer.cpu\n form.ram.default = computer.ram\n form.rom.default = computer.rom\n form.os.default = computer.os\n form.supplements.default = computer.supplements\n form.process()\n\n if form.validate_on_submit():\n ...\nRun Code Online (Sandbox Code Playgroud)\n\n当我不设置默认值时(删除此 \xe2\x86\x93),代码工作正常
\n\nform.email.default = user.email\nform.type_.default=computer.type_\nform.model.default = computer.model\nform.cpu.default = computer.cpu\nform.ram.default = computer.ram\nform.rom.default = computer.rom\nform.os.default = computer.os\nform.supplements.default = computer.supplements\nform.process()\nRun Code Online (Sandbox Code Playgroud)\n\n形式:
\n\nclass EditComputerForm(FlaskForm): …Run Code Online (Sandbox Code Playgroud)