У меня нет никаких советов для django.contrib.admin
, так как я им не пользуюсь.Мои клиенты предпочитают встроенное обновление своего сайта, похожее на CMS (две «версии» их смущают), а я предпочитаю дополнительный контроль.
Итак, вы когда-либо использовали django.forms?Формы Django предоставят вам простой способ принять и проверить ввод в соответствии с вашими потребностями.Вы можете расширить форму с помощью собственных полей и настроить их проверку .Так, например, вы можете добавить поле в форму, которое вызывает ValidationError
, если введенная строка содержит символы, которые вы хотите опустить, например.В Django есть много полезных полей ввода, в том числе EmailField
.
Следующим действительно большим трюком является django.forms.ModelForm .Это обеспечивает очень простой способ создать собственную форму, а затем вставить ее в нужный объект и сохранить в базе данных.Это делает это для вас.Все это.Буквально, вы делаете это:
fItem = ItemForm(request.POST)
# or
# I = Item.objects.get(id=?)
# fItem = ItemForm(request.POST, instance=I)
if f.is_valid():
fItem.save()
С помощью этого и используя формы, вы можете легко создавать операции CRUD самостоятельно.
Следующее, что нужно сделать, - это пользователи, группы и права доступа.Ничто не мешает вам использовать для этого предоставляемые средства аутентификации и свой собственный пользовательский интерфейс.Вам не нужно использовать реальный администратор сайта;два не связаны друг с другом.
Я лично свернул свой собственный, который я склонен использовать, потому что на одном из моих заданий клиент предъявлял особые требования к аутентификации и авторизации.Я не рекомендовал бы это - только используйте то, что там.Тем более что теперь есть аутентификационные бэкэнды , такие как Django-SocialAuth .