我正在测试django-userena演示项目。我已经安装了sendmail。
我在注册时看到此错误:
Environment:
Request Method: POST
Request URL: http://127.0.0.1:8000/accounts/signup/
Django Version: 1.3.1
Python Version: 2.7.2
Installed Applications:
['django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.admin',
'easy_thumbnails',
'guardian',
'south',
'userena',
'userena.contrib.umessages',
'demo_project.profiles']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'userena.middleware.UserenaLocaleMiddleware')
Traceback:
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
111. response = callback(request, *callback_args, **callback_kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/decorators.py" in _wrapped_view
28. return view_func(request, *args, **kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/views.py" in signup
69. if form.is_valid():
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/forms/forms.py" in is_valid
121. return self.is_bound and not bool(self.errors)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/forms/forms.py" in _get_errors
112. self.full_clean()
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/forms/forms.py" in full_clean
267. self._clean_fields()
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/forms/forms.py" in _clean_fields
287. value = getattr(self, 'clean_%s' % name)()
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/forms.py" in clean_username
49. user = User.objects.get(username__iexact=self.cleaned_data['username'])
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/manager.py" in get
132. return self.get_query_set().get(*args, **kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/query.py" in get
344. num = len(clone)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/query.py" in __len__
82. self._result_cache = list(self.iterator())
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/query.py" in iterator
273. for row in compiler.results_iter():
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py" in results_iter
680. for rows in self.execute_sql(MULTI):
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py" in execute_sql
735. cursor.execute(sql, params)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/backends/util.py" in execute
34. return self.cursor.execute(sql, params)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py" in execute
86. return self.cursor.execute(query, args)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/MySQLdb/cursors.py" in execute
174. self.errorhandler(self, exc, value)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/MySQLdb/connections.py" in defaulterrorhandler
36. raise errorclass, errorvalue
Exception Type: DatabaseError at /accounts/signup/
Exception Value: (1146, "Table 'demo_project.auth_user' doesn't exist")
修改
抱歉我之前无法更新此问题,我很忙,当我运行syncdb时,我看到此错误
Environment:
Request Method: POST
Request URL: http://127.0.0.1:8000/accounts/signup/
Django Version: 1.3.1
Python Version: 2.7.2
Installed Applications:
['django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.admin',
'easy_thumbnails',
'guardian',
'south',
'userena',
'userena.contrib.umessages',
'demo_project.profiles']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'userena.middleware.UserenaLocaleMiddleware')
Traceback:
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
111. response = callback(request, *callback_args, **callback_kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/decorators.py" in _wrapped_view
28. return view_func(request, *args, **kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/views.py" in signup
70. user = form.save()
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/forms.py" in save
86. userena_settings.USERENA_ACTIVATION_REQUIRED)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/managers.py" in create_user
62. userena_profile = self.create_userena_profile(new_user)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/userena/managers.py" in create_userena_profile
104. activation_key=activation_key)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/manager.py" in create
138. return self.get_query_set().create(**kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/query.py" in create
360. obj.save(force_insert=True, using=self.db)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/base.py" in save
460. self.save_base(using=using, force_insert=force_insert, force_update=force_update)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/base.py" in save_base
553. result = manager._insert(values, return_id=update_pk, using=using)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/manager.py" in _insert
195. return insert_query(self.model, values, **kwargs)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/query.py" in insert_query
1436. return query.get_compiler(using=using).execute_sql(return_id)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py" in execute_sql
791. cursor = super(SQLInsertCompiler, self).execute_sql(None)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py" in execute_sql
735. cursor.execute(sql, params)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/backends/util.py" in execute
34. return self.cursor.execute(sql, params)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py" in execute
86. return self.cursor.execute(query, args)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/MySQLdb/cursors.py" in execute
174. self.errorhandler(self, exc, value)
File "/home/elie/.django-projects/showpill/local/lib/python2.7/site-packages/MySQLdb/connections.py" in defaulterrorhandler
36. raise errorclass, errorvalue
Exception Type: DatabaseError at /accounts/signup/
Exception Value: (1146, "Table 'demo_project.userena_userenasignup' doesn't exist")
第二次编辑
这是syncdb
Syncing...
Creating tables ...
Installing custom SQL ...
Installing indexes ...
No fixtures found.
Synced:
> django.contrib.auth
> django.contrib.contenttypes
> django.contrib.sessions
> django.contrib.sites
> django.contrib.messages
> django.contrib.admin
> south
> demo_project.profiles
Not synced (use migrations):
- easy_thumbnails
- guardian
- userena
- userena.contrib.umessages
(use ./manage.py migrate to migrate these)
这是./manage.py migrate
Running migrations for easy_thumbnails:
- Nothing to migrate.
- Loading initial data for easy_thumbnails.
No fixtures found.
Running migrations for guardian:
- Nothing to migrate.
- Loading initial data for guardian.
No fixtures found.
Running migrations for userena:
- Nothing to migrate.
- Loading initial data for userena.
No fixtures found.
Running migrations for umessages:
- Nothing to migrate.
- Loading initial data for umessages.
No fixtures found.
请注意,尽管我看到错误,但用户名和电子邮件仍保存在数据库中。
如果我登录,则会显示your account has been disabled
如果我尝试重置密码,则说
That e-mail address doesn't have an associated user account. Are you sure you've registered?
答案 0 :(得分:5)
您需要运行syncdb:manage.py syncdb
你已经知道你还需要使用各种南方命令。
现在出现了两个问题:你是否在南方奔跑后仍然遇到这些错误(我猜你是这样);第二,错误消息(Exception Value: (1146, "Table 'demo_project.userena_userenasignup' doesn't exist")
)中指定的表是否确实存在?检查数据库以确定表是否存在,如果存在,则检查是否存在于正确的数据库中。
答案 1 :(得分:3)
我认为你需要删除你的数据库。然后在新数据库上再次执行manage.py syncdb
和manage.py migrate
。当您运行manage.py migrate
时,它不应该为您提供您发布的输出。您的输出不会更改或创建任何表,这可能是问题。也许你还没有创建所需的表格。
使用userena提供的demo_project共有21个表。
要获得一般帮助,应该让这个项目有效。
pip install django-userena
demo_project
manage.py syncdb
和manage.py migrate
我现在已经完成了这项工作,并且可以确认demo_project
如果完成这些步骤将会起作用。
*请记住,如果您在/accounts/signup/
页面上注册用户。该用户默认情况下无法登录/admin/
。除非您在管理员中为他提供个人资料,否则您的超级用户用户将无法访问/accounts/(profile)/
下的个人资料。