trong django theo mặc định khi syncdb được chạy với django.contrib.auth cài đặt, nó tạo quyền mặc định trên mỗi mô hình ... như foo.can_change, foo.can_delete và foo.can_add. Để thêm quyền tùy chỉnh cho mô hình, người dùng có thể thêm lớp Meta: theo mô hình và xác định quyền ở đó, như được giải thích tại đây https://docs.djangoproject.com/en/dev/topics/auth/#custom-permissionsLàm cách nào để thêm quyền tùy chỉnh vào Mô hình người dùng trong django?
Câu hỏi của tôi là phải làm gì nếu muốn thêm quyền tùy chỉnh vào Mô hình người dùng? như foo.can_view. Tôi có thể làm điều này với đoạn mã sau,
ct = ContentType.objects.get(app_label='auth', model='user')
perm = Permission.objects.create(codename='can_view', name='Can View Users',
content_type=ct)
perm.save()
Nhưng tôi muốn thứ gì đó có thể chơi độc đáo với syncdb, ví dụ như lớp Meta trong mô hình tùy chỉnh của tôi. Tôi chỉ nên có những trong lớp Meta: dưới UserProfile vì đó là cách để mở rộng mô hình người dùng. nhưng đó là cách PHẢI để làm điều đó? Nó sẽ không buộc nó vào mô hình UserProfile?
Bạn có thể làm điều đó trong mô hình di cư: http://stackoverflow.com/a/32706020/538284 –