0

Django 1.3 で「django-lazysignup 0.8」を使用しています。

私がこれを行うとき:

景色

@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})

コンソール出力は、ビューが 2 回呼び出されたように見えることを示しています (b2 が 2 回呼び出され、Page オブジェクトが 2 回作成され、print ステートメントが 2 回出力されます)。

出力画面は次のとおりです。

出力:

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

これが発生する必要はありません。ビューを一度呼び出して、1 つの Page オブジェクトを作成する必要があります。解決策はありますか?

4

1 に答える 1

1

これは Django-lazysignup とは関係ないと思います。

2 番目のリクエストの URL を見ると、次のようになります。

/edit/images/favicon.ico

これは、ブラウザがウェブサイトのファビコンを読み込もうとしているように見えます。images/favicon.icoこれは、絶対パスではなく相対パスを使用したことを示しています/images/favicon.ico

ファビコンの URL がビューを呼び出しているのは正しくないようですpage_edit。これは、URL パターン$に文字列の末尾を示す a がないことを示しています。次のように変更する必要があります。

url('^edit/$', 'page_edit'),
于 2012-03-12T14:47:57.907 に答える