πŸ› οΈ Настройка рСгистрации ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django: Π³Π΄Π΅ ΠΈ ΠΊΠ°ΠΊ это дСлаСтся

Административная панСль Django прСдоставляСт ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ интСрфСйс для настройки рСгистрации ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ. Π Π΅Π³ΠΈΡΡ‚Ρ€Π°Ρ†ΠΈΡŽ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ слСдуСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π΅ административной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ("admin.py") вашСго прилоТСния Django. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

        from django.contrib import admin
        from .models import YourModel

        admin.site.register(YourModel)
    
Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ модСль YourModel ΠΈΠ· Ρ„Π°ΠΉΠ»Π° с модСлями ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ register() Π½Π° экзСмплярС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° admin.site с ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. ПослС выполнСния рСгистрации модСль Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΈ доступна для рСдактирования Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Административная панСль Django: Π³Π΄Π΅ настраиваСтся рСгистрация ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ

Π’ΠΎ врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с использованиСм Django, административная панСль ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ, позволяя администраторам ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ настройками прилоТСния. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим, Π³Π΄Π΅ происходит рСгистрация ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django ΠΈ ΠΊΠ°ΠΊ это дСлаСтся.

1. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ модСль Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ модСль ΡƒΠΆΠ΅ создана ΠΈ настроСна Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Django. Для этого Π²Π°ΠΌ потрСбуСтся:

  • ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ модСль с использованиСм класса ΠΌΠΎΠ΄Π΅Π»ΠΈ Django
  • ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ поля ΠΌΠΎΠ΄Π΅Π»ΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CharField, IntegerField, ForeignKey ΠΈ Ρ‚. Π΄.

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ модСль "Product" с нСсколькими полями:


from django.db import models

class Product(models.Model):
    name = models.CharField(max_length=100)
    price = models.DecimalField(max_digits=5, decimal_places=2)
    description = models.TextField()
    category = models.ForeignKey(Category, on_delete=models.CASCADE)
    

2. РСгистрация ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ

ПослС ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Π΅Π΅ рСгистрации Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django. Для этого Π²Π°ΠΌ понадобится ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» "admin.py" Π² вашСм ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Django.

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» "admin.py" ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:


from django.contrib import admin
from .models import Product

admin.site.register(Product)
    

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ ΠΌΡ‹ рСгистрируСм модСль "Product" Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ с использованиСм ΠΌΠ΅Ρ‚ΠΎΠ΄Π° "register()" ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° "admin".

3. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ настройки ΠΌΠΎΠ΄Π΅Π»ΠΈ

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ административная панСль Django ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ всС поля ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ΡŒ стандартныС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Однако Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ модСль, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ соотвСтствовала вашим потрСбностям.

Допустим, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ "description" Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ класс, Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉΡΡ ΠΎΡ‚ класса "ModelAdmin" Π² Ρ„Π°ΠΉΠ»Π΅ "admin.py" вашСго прилоТСния. Π—Π°Ρ‚Π΅ΠΌ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ модСль с использованиСм этого класса:


from django.contrib import admin
from .models import Product

class ProductAdmin(admin.ModelAdmin):
    exclude = ('description',)

admin.site.register(Product, ProductAdmin)
    

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм класс "ProductAdmin", ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСт Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ "exclude" для поля "description", Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ.

4. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ настройки ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ

Административная панСль Django Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ мноТСство Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… настроСк для отобраТСния ΠΈ управлСния Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ:

  • Поля Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠ»ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ отобраТСния Π΄Π°Π½Π½Ρ‹Ρ…
  • Поля Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΎΠ²
  • ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ доступа ΠΊ модСлям для Ρ€Π°Π·Π½Ρ‹Ρ… Π³Ρ€ΡƒΠΏΠΏ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ
  • Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… дСйствий Π½Π° основС ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ
  • ИзмСнСниС порядка отобраТСния ΠΏΠΎΠ»Π΅ΠΉ
  • И ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠΏΡ†ΠΈΠΈ...

ОписаниС всСх этих Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… настроСк Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π° Ρ€Π°ΠΌΠΊΠΈ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Django, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΠΏΡ†ΠΈΠΈ.

Π’Ρ‹Π²ΠΎΠ΄

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли, Π³Π΄Π΅ происходит рСгистрация ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django ΠΈ ΠΊΠ°ΠΊ ΠΈΡ… Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ рСгистрациСй ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Ρ‹ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ»ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ модСль ΠΈ Π·Π°Ρ‚Π΅ΠΌ приступитС ΠΊ рСгистрации ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ "admin.py". ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ настройки для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ отобраТСния ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ.

НадСюсь, эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π²Π°ΠΌ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ с рСгистрациСй ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django. Π£Π΄Π°Ρ‡ΠΈ Π² вашСй Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

#37. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π°Π΄ΠΌΠΈΠ½-ΠΏΠ°Π½Π΅Π»ΠΈ. РСгистрация ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ | Π£Ρ€ΠΎΠΊΠΈ ΠΏΠΎ Django 4

#10. НачинаСм Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π°Π΄ΠΌΠΈΠ½-панСлью | Django ΡƒΡ€ΠΎΠΊΠΈ

47 Админ панСль Django. ΠšΡƒΡ€Ρ ΠΏΠΎ Django

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

πŸ› οΈ Настройка рСгистрации ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Π² административной ΠΏΠ°Π½Π΅Π»ΠΈ Django: Π³Π΄Π΅ ΠΈ ΠΊΠ°ΠΊ это дСлаСтся

πŸ“Œ Как Π²Ρ‹Π»ΠΎΠΆΠΈΡ‚ΡŒ Django ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° GitHub: шаг Π·Π° шагом руководство