- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 celery 从 csv 读取数据并将其上传到 Postgres。 celery 任务正在运行(我认为),但是 django 抛出了一个错误。我正在获取一个文件,将其转换为 Pandas,删除 2 列,然后转换为 numpy 并传递给 celery。
#tasks.py
@shared_task
def a(data):
for x in data:
date=x[0]
date=datetime.datetime.strptime(date,"%m/%d/%Y")
date=str(date.date())
desc=x[1]
amount=x[3]
account=x[6]
cat=x[5]
account_type=x[4]
#changing account type
if account_type=="debit":
account_type=False
else:
account_type=True
#creating account if needed and assigning the the object to account
try:
account=t102_accounts.objects.get(c102_acc_name=account,c102_is_credit_fl=account_type)
except:
account=t102_accounts.objects.create(c102_acc_name=account,c102_is_credit_fl=account_type)
#creating cat if needed and assigning the object
try:
cat=t100_code_lookup.objects.get(c100_code_name=cat)
except:
cat=t100_code_lookup.objects.create(c100_code_name=cat,c100_for_exp_fl=True,c100_for_income_fl=True)
#creating the transaction if it is not existing already
try:
t106_transactions.objects.get(c106_trans_amount=amount,
c106_trans_date=date,c102_trans_card_num=account,
c100_trans_cat=cat,c106_trans_name=desc)
continue
except:
t106_transactions.objects.create(c106_trans_amount=amount,
c106_trans_date=date,c102_trans_card_num=account,
c100_trans_cat=cat,c106_trans_name=desc)
return 'done'
#calling the function in views
def upload(request):
if request.method=="POST":
form=UploadFile(request.POST,request.FILES)
if form.is_valid():
data=request.FILES["file"]
data=pd.read_csv(data)
del data["Notes"]
del data["Labels"]
data = data.dropna(axis=0)
data=data.to_numpy()
data=data.tolist()
a.delay(data)
return redirect(dashboard)
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\celery\utils\dispatch\signal.py", line 288, in send
response = receiver(signal=self, sender=sender, **named)
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\celery\fixups\django.py", line 172, in on_task_postrun
self.close_database()
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\celery\fixups\django.py", line 177, in close_database
return self._close_database()
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\celery\fixups\django.py", line 186, in _close_database
conn.close()
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\django\utils\asyncio.py", line 24, in inner
return func(*args, **kwargs)
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\django\db\backends\base\base.py", line 286, in close
self.validate_thread_sharing()
File "c:\users\yogab\appdata\local\programs\python\python38-32\lib\site-packages\django\db\backends\base\base.py", line 553, in validate_thread_sharing
raise DatabaseError(
django.db.utils.DatabaseError: DatabaseWrapper objects created in a thread can only be used in that same thread. The object with alias 'default' was created in thread id 54283112 and this is thread id 8121832.```
最佳答案
我想我有一个类似的 problem .
你如何开始你的 celery 任务?你可能会使用 --pool=eventlet
与 --pool=solo 它对我有用。
例子:
celery -A yourapp.celery worker --loglevel=info --pool=solo
有关池选项的更多信息:
https://www.distributedpython.com/2018/10/26/celery-execution-pool/
关于python - 在一个线程中创建的 DatabaseWrapper 对象只能在同一个线程中使用。”尝试使用 celery 插入数据库时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60179472/
版本号为 Django 1.6、Python 3.3.2 和 Mac OS X 10.9 我使用此命令创建一个应用程序 python3 manage.py startapp lists 然后在我的l
我在输入这个问题之前查看了类似的帖子。我正在使用 Django 1.5、Python 3.3.2 和 MySQL 5.6/连接器。 我是 Django/Python 的新手,正在学习基本教程。我创建了
当我运行服务器并尝试加载本地版本的网络应用程序时,在 Django 1.5.1(和 1.5.0)和 mysql 中抛出以下数据库错误: DatabaseError at / DatabaseWrapp
我正在使用 Django+tenant_schemas,我的应用程序的本地版本运行良好。但是,当我尝试将其推送到暂存 (Heroku+Docker) 时,出现以下错误: AttributeError:
我正在使用 celery 从 csv 读取数据并将其上传到 Postgres。 celery 任务正在运行(我认为),但是 django 抛出了一个错误。我正在获取一个文件,将其转换为 Pandas,
我刚刚安装了 Python 3.3.0、mysql-connector 和 Django。然后我创建了我的第一个应用程序,名为 mysite。在 settings.py 中,我添加了这些行: DATA
我是 python 和 djanog 的新手。 我使用安装 django。 Pip install django 比我安装了Mssql连接器。 pip install django-mssql 比我使
堆: Django 3.0.2python 3.8.1celery 4.4.0redis 3.2.0 command to start celery: celery -A app_project wo
我是一名优秀的程序员,十分优秀!