我使用 django 生成的表单视图收到 This field is required 错误。
我有一个扫描模型,如下所示:
class Scan(models.Model):
device = models.ForeignKey(Device, null=True, on_delete=models.SET_NULL)
created_at = models.DateTimeField('Created', auto_now=True)
data = models.FileField(upload_to='uploads/')
def __str__(self):
return str("{}-{}".format(self.device, self.created_at))
Run Code Online (Sandbox Code Playgroud)
我定义了一个 CreateView:
class ScanCreate(LoginRequiredMixin, CreateView):
model = Scan
fields = '__all__'
Run Code Online (Sandbox Code Playgroud)
我的网址路线是
urlpatterns = [
...
path('scan/create/', views.ScanCreate.as_view(), name='scan-create'),
...
]
Run Code Online (Sandbox Code Playgroud)
最后是 scan_form.html 模板
{% block content %}
<form action="" method="post">
{% csrf_token %}
<table>
{{ form.as_table }}
</table>
<input type="submit" value="Submit">
</form>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
在选择要上传的文件并提交表单时,我收到“此字段为必填字段”。错误并且请求失败:
以下代码检查球是否与砖重叠.如果发生重叠,则会从列表中突出显示并删除砖块.
当我只删除矢量brickWall中的最后一项时,我遇到了核心转储.在评论erase()行时,代码似乎运行良好.
在论坛上查看类似问题之后,我相信我正在迭代并正确地删除向量中的项目,但我怀疑情况可能并非如此.
对此代码的任何建议将不胜感激!
void Game::updateEntities()
{
ballMother.update();
for (std::vector<gdf::Entity>::iterator it = brickWall.begin(); it != brickWall.end(); ++it)
{
if (it->getRect().intersects(ballMother.getRect())) {
it->rect.setFillColor(sf::Color::Red);
it = brickWall.erase(it);
}
else {
it->rect.setFillColor(it->colour);
}
}
}
Run Code Online (Sandbox Code Playgroud) 我想同时运行函数f1,f2然后只有在完成后才执行操作.
似乎如果函数在脚本中是后向的,脚本f1/f2done看不到值更改,则until循环不会终止,并且不会执行最后一行.
编辑 - 需要额外的功能
2.有没有办法可以读取/写入脚本中的主流程变量(不使用文件)?
谢谢你的阅读.
#!/bin/bash
f1done="false"
f2done="false"
function f1 {
echo "f1: "
sleep 4
echo "f1 done."
f1done="true"
}
function f2 {
echo "f2: "
sleep 2
echo "f2 done."
f2done="true"
}
f1 &
f2 &
until [[ "$f1done" == "true" && "$f2done" == "true" ]]; do
echo "$f1done $f2done...";
sleep 3;
done
echo "Both done."
Run Code Online (Sandbox Code Playgroud) 我正在编写一个Python程序,它同时运行从队列中获取的任务,以学习 asyncio.
通过与主线程(在 REPL 内)交互,项目将被放入队列中。每当一个任务被放入队列时,它应该立即被消耗并执行。我的方法是启动一个单独的线程并将队列传递到该线程内的事件循环。
这些任务正在运行,但只是按顺序运行,我不清楚如何同时运行这些任务。我的尝试如下:
import asyncio
import time
import queue
import threading
def do_it(task_queue):
'''Process tasks in the queue until the sentinel value is received'''
_sentinel = 'STOP'
def clock():
return time.strftime("%X")
async def process(name, total_time):
status = f'{clock()} {name}_{total_time}:'
print(status, 'START')
current_time = time.time()
end_time = current_time + total_time
while current_time < end_time:
print(status, 'processing...')
await asyncio.sleep(1)
current_time = time.time()
print(status, 'DONE.')
async def main():
while True:
item = task_queue.get()
if item == _sentinel:
break
await …Run Code Online (Sandbox Code Playgroud)