هل يقوم django-lazysignupallow_lazy_user بالاستدعاء للعرض الملتف مرتين؟
-
12-12-2019 - |
سؤال
أنا استخدم "جانغو كسول الاشتراك 0.8" مع جانغو 1.3.
عندما أفعل هذا:
المنظر
@allow_lazy_user
def page_edit(request):
if request.method == 'GET':
if is_lazy_user(request.user):
b2 = Page.objects.create(user=request.user)
print request.user.username
return render_to_response('page_editor.html',{'page':b2})
يُظهر إخراج وحدة التحكم أن العرض يبدو أنه تم استدعاؤه مرتين (يتم استدعاء b2 مرتين وإنشاء كائن الصفحة مرتين، ويتم طباعة بيان الطباعة مرتين)
هنا شاشة الإخراج:
انتاج:
7707089a583a424caf0face130cb20 # this is the reult of print request.user.username
[12/Mar/2012 15:02:45] "GET /edit/ HTTP/1.1" 200 8368
7707089a583a424caf0face130cb20
[12/Mar/2012 15:02:46] "GET /edit/images/favicon.ico HTTP/1.1" 200 8368
لا أريد أن يحدث هذا، يجب استدعاء العرض مرة واحدة وإنشاء كائن صفحة واحد.هل هناك أي حل؟
المحلول
لا أعتقد أن هذا مرتبط بـ Django-lazysignup.
إذا نظرت إلى عنوان URL للطلب الثاني:
/edit/images/favicon.ico
يبدو لي أن متصفحك يحاول تحميل الرمز المفضل لموقعك على الويب.يشير ذلك إلى أنك استخدمت مسارًا نسبيًا images/favicon.ico
بدلاً من المسار المطلق /images/favicon.ico
.
لا يبدو صحيحًا تمامًا أن عنوان url الخاص بالرمز المفضل قد أطلق على page_edit
منظر.يشير هذا إلى أن نمط عنوان URL الخاص بك مفقود $
للدلالة على نهاية السلسلة.يجب عليك تغييره إلى شيء مثل:
url('^edit/$', 'page_edit'),