0
私のカスタム認証バックエンドでは、LDAPレスポンスからユーザ名、メールアドレス、姓を抽出し、ユーザがまだ作成していない場合は、存在:ユーザの属性がdjangoの管理者に表示されない
user = User(username=username, email=result[0][1].get('mail')[0], first_name=result[0][1].get('givenName')[0], last_name=result[0][1].get('sn')[0])
user.save()
そして、私が試した他の変形例:
user = User.objects.create_user(username, result[0][1].get('mail')[0])
user.first_name = result[0][1].get('givenName')[0]
user.last_name = result[0][1].get('sn')[0]
user.save()
ユーザ名と電子メールは私が最初と最後の名前を取得することはできません、ユーザーの初期認証の成功後に管理者に表示されますが表示。 LDAP応答から値をログに記録すると、これらの値が存在することが示されます。
ここで何が問題になるのでしょうか?
'first_name'と' last_name'の値はデータベースに正しく表示されていますか?言い換えれば、管理インターフェースを表示する方法を尋ねているのですか、それともデータベースにアクセスしていない状況に陥っていますか? – mjjohnson
これについて不明な点をおかけして申し訳ありません。私はチェックしただけで、データベースにも表示されません... –
その場合、正確には、 'result [0] [1] .get( 'givenName')[0] 'と' result [0] [1] .get( 'sn')[0] 'は、print文を使うか、デバッガに落として戻ってきます。私はあなたがそこに何かを得ていないと思うが、あなたの設定についてもっと知らないと、私は理由を言うことができなかった。 (もしデバッガを試してみたいのであれば、pdbはかなり良いです;このコードのどこかに 'import pdb; pdb.set_trace()'という行を挿入して、その中にドロップするか、Googleの 'pdb'それ)。 – mjjohnson