0

Django を使用して、トラックと会社の 2 種類のユーザーを作成しました。ここにユーザー登録ページの私の登録ページがあります

登録後、ユーザーがトラックか会社かに関するデータがデータベースに移動します。

私のログイン ページでは、EmailID とパスワードのみを入力する必要があります。

一意の EmailID を持つユーザーが、ユーザーのタイプに基づいて有効なページにリダイレクトする方法を知りたいです。

4

2 に答える 2

0

カスタマイズされたユーザー モデルは、おそらく次のようなものです。

class myuser(models.Model):
    myUser = models.ForeignKey(User,..)
    userType = models.CharField(choices=(('truck','truck'),('company','company'))

ビューは次のようになります。

def login(request):
# authentication and getting the data from POST request to your login page,
# i assume you have a variable called user and you have your user object in it
    userType = user.userType
    if userType == company:
        return HttpResponseRedirect('/some/url/')
    if userType == truck:
        return HttpResponseRedirect('/some/other/url/')
于 2016-07-05T09:48:22.020 に答える
0

そのようなものが必要になります。

def user_login(request):
    if request.method == 'POST':
        form = AuthenticationForm(data=request.POST)
        if form.is_valid():
            form.clean()
            login(request, form.user_cache)
            if form.user_cache.type == 'truck':
                return HttpResponseRedirect('/some/where')
            elif form.user_cache.type == 'company':
                return HttpResponseRedirect('/some/where/else')
    else:
        form = AuthenticationForm()

    return render(request, 'login.html', {'form' : form})
于 2016-07-05T09:44:31.907 に答える