我有一个 Django 模型,如下所示:
class Employee(models.Model):
user = models.OneToOneField(User)
name = models.CharField(max_length=30)
(用户是 django.contrib,auth 用户)
我正在尝试在 yaml 夹具中将数据加载到我的 Postgres 数据库中,代码如下:
- model: auth.User
pk: 1
fields:
username: admin
password: 'pbkdf2_sha256$10000$7H9GitTtDND4$XWUCV1jgEU0QZbbitGXJrp5tcEEPRYS6WYVfdm3AcXo='
- model: rbac.Employee
pk: 1
fields:
user: 1
name: admin
问题是,当我运行时./manage.py loaddata fixture.yaml
出现错误:
Traceback (most recent call last):
File "./manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/tomus/dev/bsk/venv/lib/python2.7/site- packages/django/core/management/__init__.py", line 453, in execute_from_command_line
utility.execute()
File "/home/tomus/dev/bsk/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 392, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/tomus/dev/bsk/venv/lib/python2.7/site-packages/django/core/management/base.py", line 229, in run_from_argv
stderr.write('%s: %s' % (e.__class__.__name__, e))
UnicodeEncodeError: 'ascii' codec can't encode characters in position 94-95: ordinal not in range(128)
我尝试将fixtures文件的编码更改为ascii,没有效果。