0

私は django を数か月しか使用していませんが、現在、別の開発者が作成した django コード ベースを変更しています。

Google アナリティクスで Facebook の登録とログインを効果的に追跡する方法を見つけようとしています。これを行う方法は、Facebook 経由で接続した後にユーザーがリダイレクトされる URL にパラメーターを追加することです。

現時点では、次のように「next」パラメーターを使用しています。

<a href="{% url socialauth_begin 'facebook' %}?next={{ request.path }}">

追加するために次のパラメーターをオーバーライドできるようにしたい:

{{request.path}}?new_facebook_user

また

{{request.path}}?facebook_login

ユーザーがすでに登録されている場合。

これを行うのに最適な場所はどこだと思いますか? これは、Google アナリティクスで fb ログインと新規ユーザーを追跡するための有効なアプローチだと思いますか?

4

2 に答える 2

1

そのアプローチは機能しません。少なくとも、そのリンクを作成するときに、ユーザーが新しいかどうかを判断することはできません。アプリは、SOCIAL_AUTH_NEW_USER_REDIRECT_URL新しく作成されたアカウントをリダイレクトする別の URL を定義する設定を提供します。この設定はパラメータよりも優先?next=されるため、定義すると失われます。

于 2012-06-30T21:15:03.310 に答える
0

次のようなパイプラインにメソッドが必要です。

def modify_next(backend, is_new=True, *args, **kwargs):
    if backend.name == "facebook":
        next = backend.strategy.session_get("next")
        if is_new:
            backend.strategy.session_set("next", "{}?new_facebook_user".format(next))
        else:
            backend.strategy.session_set("next", "{}?facebook_login".format(next))

したがって、デフォルトの次の動作を変更します。

于 2015-10-09T11:41:17.177 に答える