我关注了Docs trytond的数据库,想将trytond的数据库设置为现有的mysql数据库,但是一直没有成功。
This是我认为与堆栈溢出类似但不相同的另一个问题。 执行此命令时出现错误
trytond -c <config_file> -d <database name> --all
我不确定这个问题是否与安装过程有关,所以下面列出我的安装步骤:
1.来自tryton主页
2.执行$ pip install trytond
仅此而已。
我添加了一个 session
[database]
uri = mysql://user:pass@localhost:3306/
并更改了默认数据库
self.set('database', 'uri',
os.environ.get('TRYTOND_DATABASE_URI', 'sqlite://'))
至
self.set('database', 'uri',
os.environ.get('TRYTOND_DATABASE_URI', 'mysql://user:pass@localhost:3306/'))
根据我的理解,这些代码行用于配置数据库。
这是执行时的结果。
Traceback (most recent call last):
File "/Users/chenxiangjun/anaconda3/envs/env/bin/trytond-admin", line 13, in <module>
from trytond.config import config
File "/Users/chenxiangjun/anaconda3/envs/env/lib/python3.6/site-packages/trytond/config.py", line 14
uri = mysql://user:pass@localhost:3306/
^
SyntaxError: invalid syntax
我更改了错误行
[database]
uri = mysql://user:pass@localhost:3306/
至
[database]
uri = 'mysql://user:pass@localhost:3306/'
我收到这个错误
Traceback (most recent call last):
File "/Users/chenxiangjun/anaconda3/envs/env/bin/trytond-admin", line 13, in <module>
from trytond.config import config
File "/Users/chenxiangjun/anaconda3/envs/env/lib/python3.6/site-packages/trytond/config.py", line 13, in <module>
[database]
NameError: name 'database' is not defined
有人知道如何解决这个问题或者有同样的经历吗? 这是我第一次设置 ERP。
最佳答案
该错误是因为您在修改Python源文件时包含了一些语法错误。您不应修改此文件,而应在配置文件中设置该值。
默认情况下不会创建配置文件,因此您应该手动创建一个。这是一个文本文件,可以放置在计算机上的任何位置,只需确保运行 trytond 的用户有足够的权限来读取它。
以下是适合您的配置的示例:
[database]
uri = mysql://user:pass@localhost:3306/
创建此文件后,您应该使用以下命令执行服务器:
trytond-c
顺便说一句:自 4.8 版本起,不再支持 MYSQL 后端,因此,如果您使用的是较新版本,则应考虑使用 sqlite 或 Postgresql。
关于python - 设置配置数据库部分时如何修复 'SyntaxError: invalid syntax'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57670180/