2017-08-05 4 views
0

ユーザーを保持するアプリケーションのサーバー側を開発したいと考えています。 もちろん、私はデータベースにユーザー情報を保持するテーブルが必要です。 最初に私は私にuseridpasswordを含むdatabase tableを与えるデータベース内でユーザーテーブルを設計するにはどうすればよいですか?

class User(models.Model): # using django models 
    userid = ... 
    password = ... 

を書き込むことができます。

しかし、将来的には各ユーザーにいくつかの属性(多分Credit、Birthday ...など)を追加したいかもしれません。私はちょうどそれらのすべてをすぐに考えることができません。そして私は、将来私が本当に必要とする属性を知ることができません。

どうすれば対応できますか?

+1

あなたはパスワードを保存するためのコードを書いてはいけません。 –

+0

Djangoのドキュメントを読むことから始めることができます:https://docs.djangoproject.com/en/1.11/topics/auth/customizing/#extending-the-existing-user-model – allcaps

答えて

0

DjangoにはUserのデフォルトモデルが用意されています。あなたはこのように使うことができます。

from django.contrib.auth.models import User 

と同じです。別のモデルを作成してForeignKeyまたはOneToOneFieldUserというモデルに追加して、各ユーザーとリンクさせることができます。

class Customuserprofile(models.Model): 
    user=models.OneToOneField(settings.AUTH_USER_MODEL) 
    credit=models.CharField() 
    birthday=models.DateTimeField() 
0

すでにDjangoにユーザーテーブルがあります。このテーブルは、最初に 'manage.py migrate'コマンドで移行を適用すると自動的に作成されます。データベーススキーマで

、このテーブルはAUTH_USERとしてリストされていて、次のコマンドも

from django.contrib.auth.models import User 
関連する問題