2017-02-09 13 views
1

私は、Djangoのサーバー(PostGISのを使用)を持っていると私は、認証に関連するすべてのものを無効にする:Djangoの管理のための完全認証を無効にする方法

  • 認証が
  • では必要ありません管理者を入力します管理者は、オンラインで検索した後、私はthis & this

    の組み合わせを試したユーザー/グループ

を隠します

管理者からオブジェクトを追加しようとするまで、私が望んだ結果が得られました。そして、私が手IntegrityError

insert or update on table "django_admin_log" violates foreign key constraint "django_admin_log_user_id_c564eba6_fk_auth_user_id" 
DETAIL: Key (user_id)=(1) is not present in table "auth_user". 

私はそれがthisのようなソリューションを使用して解決しようと、それは助けにはなりませんでした。

私は、最終目標が達成されている限り、全く新しいアプローチで解決しても構いません。

おかげ控え、Djangoプロジェクトとして

+3

実際にid = 1のユーザーを作成する必要があります。 –

答えて

2

がドッカーズで実行され、ユーザーがすでに存在しているか、私がやってしまっていない時に展開することができます。

# Create superuser for admin use in case it doesn't exist 
try: 
    User.objects.get_by_natural_key('admin') 
except User.DoesNotExist: 
    User.objects.create_superuser('admin', '[email protected]', '123456') 

・ホープこれは誰か1に役立ちます日。完全使用:

from django.contrib import admin 
from django.contrib.auth.models import User, Group 


# We add this so no authentication is needed when entering the admin site 
class AccessUser(object): 
    has_module_perms = has_perm = __getattr__ = lambda s,*a,**kw: True 

admin.site.has_permission = lambda r: setattr(r, 'user', AccessUser()) or True 

# We add this to remove the user/group admin in the admin site as there is no user authentication 
admin.site.unregister(User) 
admin.site.unregister(Group) 

# Create superuser for admin use in case it doesn't exist 
try: 
    User.objects.get_by_natural_key('admin') 
except User.DoesNotExist: 
    User.objects.create_superuser('admin', '[email protected]', '123456') 
関連する問題