2
我需要測試我的Django應用程序需要的admin user
有一定的權限Django的:測試管理員用戶
的景色之一如何創建一個test user
並設置一些其權限像staff status
或group permissions
的?
我可以使用工廠來做到這一點嗎?
我需要測試我的Django應用程序需要的admin user
有一定的權限Django的:測試管理員用戶
的景色之一如何創建一個test user
並設置一些其權限像staff status
或group permissions
的?
我可以使用工廠來做到這一點嗎?
要創建裸超級用戶做python manage.py createsuperuser
https://docs.djangoproject.com/en/dev/ref/django-admin/#createsuperuser
初始設置權限,創建自定義Django的管理命令 app_name/commands/management/create_test_user.py
from django.contrib.auth.models import User, Group, Permission
from django.core.management.base import BaseCommand
class Command(BaseCommand):
help = "Creates test user"
args = '<username> <password>'
def handle(self, username, password):
user, created = User.objects.get_or_create(username=username)
user.set_password(password)
user.is_staff = True
user.save()
custom_perm = Permission.objects.get(codename='custom_perm_name')
user.user_permissions.add(custom_perm)
if created:
print "%s created" % username
else:
print "%s updated" % username
然後:
python manage.py create_test_user admin1 qwe123
是不是類似的問題? http://stackoverflow.com/questions/3495114/how-to-create-admin-user-in-django-tests-py – cadmi 2013-03-28 06:04:53
是的,但我不想給用戶的用戶模型本身及其create_superuser方法。我所有的測試都使用了工廠 – 2013-03-28 06:09:17