Vấn đề này trông quen thuộc nên tôi nghĩ tôi sẽ xem liệu tôi có thể tái tạo từ lượng thông tin hạn chế hay không.
Một tìm kiếm nhanh đã đưa ra một mục trong blog của James Bennett ở đây đề cập rằng khi làm việc với UserProfile để mở rộng mô hình Người dùng, một lỗi phổ biến trong settings.py có thể khiến Django gặp lỗi này.
Để trích dẫn mục nhập blog:
Giá trị của cài đặt không phải là "appname.models.modelname", mà chỉ là "appname.modelname". Lý do là Django không sử dụng điều này để nhập khẩu trực tiếp; thay vào đó, nó sử dụng chức năng tải mô hình nội bộ chỉ muốn tên của ứng dụng và tên của mô hình. Cố gắng thực hiện những việc như "appname.models.modelname" hoặc "projectname.appname.models.modelname" trong cài đặt AUTH_PROFILE_MODULE sẽ khiến Django phát nổ với lỗi "quá nhiều giá trị để giải nén", vì vậy hãy đảm bảo rằng bạn đặt "appname.modelname" và không đặt gì khác vào giá trị của AUTH_PROFILE_MODULE.
Nếu OP đã sao chép thêm bản theo dõi, tôi sẽ thấy thứ gì đó giống như bản bên dưới mà tôi có thể sao chép bằng cách thêm "mô hình" vào cài đặt AUTH_PROFILE_MODULE của mình.
TemplateSyntaxError at /
Caught an exception while rendering: too many values to unpack
Original Traceback (most recent call last):
File "/home/brandon/Development/DJANGO_VERSIONS/Django-1.0/django/template/debug.py", line 71, in render_node
result = node.render(context)
File "/home/brandon/Development/DJANGO_VERSIONS/Django-1.0/django/template/debug.py", line 87, in render
output = force_unicode(self.filter_expression.resolve(context))
File "/home/brandon/Development/DJANGO_VERSIONS/Django-1.0/django/template/__init__.py", line 535, in resolve
obj = self.var.resolve(context)
File "/home/brandon/Development/DJANGO_VERSIONS/Django-1.0/django/template/__init__.py", line 676, in resolve
value = self._resolve_lookup(context)
File "/home/brandon/Development/DJANGO_VERSIONS/Django-1.0/django/template/__init__.py", line 711, in _resolve_lookup
current = current()
File "/home/brandon/Development/DJANGO_VERSIONS/Django-1.0/django/contrib/auth/models.py", line 291, in get_profile
app_label, model_name = settings.AUTH_PROFILE_MODULE.split('.')
ValueError: too many values to unpack
Tôi nghĩ đây là một trong số ít trường hợp Django vẫn có một chút phép thuật nhập khẩu có xu hướng gây nhầm lẫn khi một lỗi nhỏ không ném ra ngoại lệ mong đợi.
Bạn có thể thấy ở cuối phần theo dõi mà tôi đã đăng cách sử dụng bất kỳ thứ gì khác ngoài biểu mẫu "appname.modelname" cho AUTH_PROFILE_MODULE sẽ khiến dòng "app_label, model_name = settings.AUTH_PROFILE_MODULE.split ('.')" Để ném lỗi "quá nhiều giá trị để giải nén".
Tôi chắc chắn 99% rằng đây là vấn đề ban đầu gặp phải ở đây.