search
menu
person

NEWS AND UDATES


17:04
Автоматическое создание логина и пароля администратора в Django
на Django можно обойти этап ввода логина, пароля и e-mail при выполнении первого syncdb. Они могут быть установлены автоматически.

в любую модель добавить следующий код

http://djangosnippets.org/snippets/1875/
Код
#!/usr/bin/env python

from django.conf import settings
from django.contrib.auth import models as auth_models
from django.contrib.auth.management import create_superuser
from django.db.models import signals

# From http://stackoverflow.com/questions/1466827/ --
#
# Prevent interactive question about wanting a superuser created. (This code
# has to go in this otherwise empty "models" module so that it gets processed by
# the "syncdb" command during database creation.)
signals.post_syncdb.disconnect(
  create_superuser,
  sender=auth_models,
  dispatch_uid='django.contrib.auth.management.create_superuser')

# Create our own test user automatically.

def create_testuser(app, created_models, verbosity, **kwargs):
  if not settings.DEBUG:
  return
  try:
  auth_models.User.objects.get(username='test')
  except auth_models.User.DoesNotExist:
  print '*' * 80
  print 'Creating test user -- login: test, password: test'
  print '*' * 80
  assert auth_models.User.objects.create_superuser('test', 'x@x.com', 'test')
  else:
  print 'Test user already exists.'

signals.post_syncdb.connect(create_testuser,
  sender=auth_models, dispatch_uid='common.models.create_testuser')
Просмотров: 1117 | Добавил: django | Рейтинг: 0.0/0
Всего комментариев: 0
dth="100%" cellspacing="1" cellpadding="2" class="commTable">
Имя *: Email:
Код *: