我正在运行Django并尝试创建超级用户,但每当我尝试执行passwd或createsuperuser命令时,我都会收到以下错误。我在PostgreSQL数据库上使用Django 1.3。
$ python manage.py createsuperuser
...
Traceback (most recent call last):
File "manage.py", line 19, in <module>
execute_manager(settings)
File "/home/stephen/.virtualenvs/s/lib/python2.7/site-packages/django/core/management/__init__.py", line 438, in execute_manager
utility.execute()
File "/home/stephen/.virtualenvs/s/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/stephen/.virtualenvs/s/lib/python2.7/site-packages/django/core/management/base.py", line 191, in run_from_argv
self.execute(*args, **options.__dict__)
File "/home/stephen/.virtualenvs/s/lib/python2.7/site-packages/django/core/management/base.py", line 229, in execute
self.stdout.write(output)
TypeError: expected a character buffer object
如果我尝试使用passwd,我会得到无用的堆栈跟踪:
File "/var/www/envs/s/lib/python2.7/site-packages/django/contrib/auth/management/commands/createsuperuser.py", line 134, in handle
User.objects.create_superuser(username, email, password)
File "/var/www/envs/s/lib/python2.7/site-packages/django/contrib/auth/models.py", line 140, in create_superuser
u = self.create_user(username, email, password)
File "/var/www/envs/s/lib/python2.7/site-packages/django/contrib/auth/models.py", line 136, in create_user
user.save(using=self._db)
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/base.py", line 460, in save
self.save_base(using=using, force_insert=force_insert, force_update=force_update)
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/base.py", line 570, in save_base
created=(not record_exists), raw=raw, using=using)
File "/var/www/envs/s/lib/python2.7/site-packages/django/dispatch/dispatcher.py", line 172, in send
response = receiver(signal=self, sender=sender, **named)
File "/var/www/spurfly/master/apps/member/models.py", line 751, in create_profile
profile, new = UserProfile.objects.get_or_create(user=instance)
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/manager.py", line 135, in get_or_create
return self.get_query_set().get_or_create(**kwargs)
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/query.py", line 378, in get_or_create
return self.get(**lookup), False
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/query.py", line 344, in get
num = len(clone)
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/query.py", line 82, in __len__
self._result_cache = list(self.iterator())
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/query.py", line 273, in iterator
for row in compiler.results_iter():
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 680, in results_iter
for rows in self.execute_sql(MULTI):
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 735, in execute_sql
cursor.execute(sql, params)
File "/var/www/envs/s/lib/python2.7/site-packages/django/db/backends/postgresql_psycopg2/base.py", line 44, in execute
return self.cursor.execute(query, args)
django.db.utils.DatabaseError: current transaction is aborted, commands ignored until end of transaction block
这是我的virtualenv。
$ pip freeze
Django==1.3
wsgiref==0.1.2
mimeparse==0.1.3
有什么想法吗?谢谢!
答案 0 :(得分:2)
您提供了错误的参数。你应该试试:
python manage.py createsuperuser --username=admin --email=a@dmin.com
此外: