Я пытаюсь настроить регистрационную форму django. И мой form.py выглядит так:
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm
class MyRegistrationForm(UserCreationForm):
first_name=forms.CharField(max_length=120, required=True,label='First Name')
last_name=forms.CharField(max_length=120, required=True,label='Last Name')
email=forms.EmailField(label='Email Address')
company_or_institution=forms.CharField(max_length=120, required=True,label='Company or Institution Name')
class Meta:
model = User
fields = ('username', 'email', 'password1', 'password2')
def save(self,commit = True):
user = super(MyRegistrationForm, self).save(commit = False)
user.first_name = self.cleaned_data['first_name']
user.last_name = self.cleaned_data['last_name']
user.email = self.cleaned_data['email']
user.company_or_institution = self.cleaned_data['company_or_institution']
if commit:
user.save()
return user
И мой views.py
def register_user(request):
if request.method == 'POST':
form = MyRegistrationForm(request.POST)
print form.is_valid()
if form.is_valid():
form.save()
return HttpResponseRedirect('/accounts/register_success')
args = {}
args.update(csrf(request))
args['form'] = MyRegistrationForm()
return render(request, 'register.html', args)
Но когда я тестирую свои формы .py из терминала (формы python.py), я получаю следующую ошибку:
Traceback (most recent call last):
File "forms.py", line 8, in <module>
from django.contrib.auth.models import User
File "/usr/local/lib/python2.7/dist-packages/django/contrib /auth/__init__.py", line 7, in <module>
from django.middleware.csrf import rotate_token
File "/usr/local/lib/python2.7/dist-packages/django/middleware/csrf.py", line 14, in <module>
from django.utils.cache import patch_vary_headers
File "/usr/local/lib/python2.7/dist-packages/django/utils/cache.py", line 26, in <module>
from django.core.cache import caches
File "/usr/local/lib/python2.7/dist-packages/django/core/cache/__init__.py", line 34, in <module>
if DEFAULT_CACHE_ALIAS not in settings.CACHES:
File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 48, in __getattr__
self._setup(name)
File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 42, in _setup
% (desc, ENVIRONMENT_VARIABLE))
django.core.exceptions.ImproperlyConfigured: Запрошена настройка КЭШИ, но настройки не настроены. Вы должны либо определить переменную среды DJANGO_SETTINGS_MODULE, либо вызвать settings.configure() перед доступом к настройкам.
Кто-нибудь знает, как это исправить? Спасибо