Створення адмінки під модель app/admin.py.
from django.contrib import admin
from page.models import Page
class PageAdmin(admin.ModelAdmin):
pass
admin.site.register(Page, PageAdmin)
Як вибрати всі записи з вьюшки.
pages = Page.objects.all()
return render(request,'index.html',{"pages": pages})
Як пройти за списком у шаблоні.
{% for i in pages %}
{{ i.title }}
class Catalog(models.Model):
name = models.CharField(max_length=250)
Адмінка.
class CatalogAdmin(admin.ModelAdmin):
pass
admin.site.register(Catalog, CatalogAdmin)
from django.core.management.base import BaseCommand, CommandError
from page.models import Catalog
lst = ['Car', 'Funiture', 'Food', 'Clothes']
class Command(BaseCommand):
def handle(self, *args, **options):
print('Loading catalog!!')
for i in lst:
c = Catalog()
c.name = i
c.save()
Перевизначимо метод str
class Catalog(models.Model):
name = models.CharField(max_length=250)
def __str__(self):
return self.name
Зв’язка одним-багатьом.
class Catalog(models.Model):
name = models.CharField(max_length=250)
def __str__(self):
return self.name
class Product(models.Model):
name = models.CharField(max_length=250)
content = models.TextField()
catalog = models.ForeignKey(Catalog,on_delete=models.CASCADE, default='', blank=True, null=True)
def __str__(self):
return self.name
Кастомізація адмінки.
class ProductAdmin(admin.ModelAdmin):
list_display = ['name', 'catalog']
list_filter = ['catalog']
admin.site.register(Product, ProductAdmin)