2017-11-03 9 views
0

普通のユーザ(管理者ではない)がログインできるようにしたいのですが、ユーザーログインを簡単に作成する方法はありますか?

デフォルトでは、Djangoでプロジェクトを実行するときにスーパーユーザを作成すれば十分です。私は通常と同様のログインテンプレートを持っている、私は意味し、これを複製したい

from .models import Question 

admin.site.register(Question) 

:私は、編集を作成し、ちょうどこのコードを追加し、管理者ダッシュボード(like in the tutorial part 2)から質問を削除することができますQuestionという名前のモデルを作成しましたこれらの通常のユーザーが所属するQuestionインスタンスを表示、作成、編集、削除できるダッシュボード彼らは質問を管理することができますが、明らかに他のユーザーやグループを編集できないようにするにはどうしたらいいですか?それは難しいでしょうか?

ありがとうございます!

答えて

1

はい、できます。

from django.contrib.auth.models import User 

class Question(models.Model): 
    name = models.CharField(max_length=50) 
    user = models.ForeignKey(User) 

とあなたのビューであなただけの私たちはすべて取得され、ここでQuestion.objects.filter(user=request.user)User.objects.get(id=request.user.id).question_set.all()をフィルタリング:最初のステップは、あなたのユーザーを持っていたら、あなたはユーザーによってフィルタリングすることができますので、彼らのために関係を作成する必要があり、ユーザーを作成しています単一のユーザーのための質問は、次のステップは、例に続いて追加、変更、または削除を試みることです。あなたは許可を管理する必要はありません

+0

正しいのは、外部キーまたはonetoone両方のタイプのユーザーと質問の関係は、その特定のユーザーの質問のみを表示します。 –

関連する問題