TurboGears 2 التشغيل السريع يظهر الخطأ على الفور
-
27-10-2019 - |
سؤال
أنا جديدة على TurboGears و تم تثبيتها فقط TG2 التنمية في بيئة افتراضية.أنا بعد طول في دليل التشغيل السريع, و قد نجحت في بناء helloworld عبر
paster quickstart
بدأت السيرفر و التنقل على شبكة الإنترنت المتصفح إلى localhost:8080
لم تكن تعلم, وعلى الفور الحصول على خطأ و لا رسالة الترحيب الوثائق تشير إلى أنني يجب أن نرى.
الخطأ ما يلي:
AttributeError: 'AcceptLanguage' object has no attribute 'best_matches'
وهنا التتبع:
URL: http://localhost:8080/
File 'C:\\VirtualEnv_1\\lib\\site-packages\\weberror-0.10.3-py2.7.egg\\weberror\\evalexception.py', line 431 in respond
app_iter = self.application(environ, detect_start_response)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\beaker-1.6-py2.7.egg\\beaker\\middleware.py', line 73 in __call__
return self.app(environ, start_response)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\beaker-1.6-py2.7.egg\\beaker\\middleware.py', line 155 in __call__
return self.wrap_app(environ, session_start_response)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\routes-1.12.3-py2.7.egg\\routes\\middleware.py', line 131 in __call__
response = self.app(environ, start_response)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\wsgiapp.py', line 107 in __call__
response = self.dispatch(controller, environ, start_response)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\wsgiapp.py', line 312 in dispatch
return controller(environ, start_response)
File 'C:\\VirtualEnv_1\\Scripts\\HelloWorld\\helloworld\\lib\\base.py', line 27 in __call__
return TGController.__call__(self, environ, start_response)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\controllers\\core.py', line 211 in __call__
response = self._dispatch_call()
File 'C:\\VirtualEnv_1\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\controllers\\core.py', line 162 in _dispatch_call
response = self._inspect_call(func)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\pylons-1.0-py2.7.egg\\pylons\\controllers\\core.py', line 105 in _inspect_call
result = self._perform_call(func, args)
File 'C:\\VirtualEnv_1\\lib\\site-packages\\turbogears2-2.1.3-py2.7.egg\\tg\\controllers\\dispatcher.py', line 230 in _perform_call
setup_i18n()
File 'C:\\VirtualEnv_1\\lib\\site-packages\\turbogears2-2.1.3-py2.7.egg\\tg\\i18n.py', line 61 in setup_i18n
أبراج.طلب.accept_language.best_matches())) AttributeError:'AcceptLanguage' كائن لا السمة 'best_matches'
هل اخطأت في شيء ما عندما كنت تثبيته أو أن هذه مشكلة مع TurboGears?
تحرير:أنا خلقت المشروع الثاني سميت GoodnightMoon هذا الوقت دون ماكو الخيار قالب (وهو الفرق الوحيد بين الاجهزة) و أحصل على نفس الخطأ:
'AcceptLanguage' object has no attribute 'best_matches'
للأسف هذا السؤال هو الوحيد الذي يمكنني العثور على مع البحث على شبكة الإنترنت المتعلقة بالضبط إلى هذا الخطأ.
هل هناك أي أدلة أخرى يمكنني استخدام وتقديم ستاكوفيرفلوو للمساعدة في الإجابة على هذا السؤال ؟
بعد مايكل بيدرسون نصيحة أدناه ، بحثت i18n.لدي i18n دليل واحد فقط فرعي اسمه رو الروسي (أفترض).أنا أعمل على اللغة الإنجليزية-تخلف نظم المتصفحات.
أنا باستخدام كل ما أحدث TG2 توزيعة هو وقت هذا السؤال, v.2.1.3 و tg.devtools 2.1.x
المحلول
المشكلة في الخطأ الاعتماد على WebOb.IIRC 1.2b2 مثبت التي تفتقر إلى best_matches الأسلوب على AcceptLanguage الدرجة.أسهل طريقة للتغلب على تلك المشكلة هو استبدال WebOb-1.2b2 مستقرة مع WebOb-1.1.1.هذا الحل يعمل بشكل جيد بالنسبة لي.
PS:إذا كنت تستخدم الظاهري-env - مجرد استبدال الملفات داخل lib/python2.7/site-packages/webob مع تلك من الموقع الرسمي http://pypi.python.org/pypi/WebOb/1.1.1