๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ’ก์›น ํ”„๋กœ์ ํŠธ/(๋ฐฑ์—”๋“œ)Django - ํ”„๋กœ์ ํŠธ01

ํ”„๋กœ์ ํŠธ01. admin ์‚ฌ์ดํŠธ์— model class ๋“ฑ๋กํ•˜๊ธฐ

๋ชฉ์ฐจ

  • 1. admin์‚ฌ์ดํŠธ์— modelํด๋ž˜์Šค๋ฅผ ๋“ฑ๋กํ•˜๋Š” ์ด์œ ๋Š”?
  • 2. Model Admin 3๊ฐ€์ง€ ๋“ฑ๋ก๋ฒ• 
  • 3. admin ์‚ฌ์ดํŠธ์˜ CRUD๊ธฐ๋Šฅ

 

<admin์‚ฌ์ดํŠธ์— Model ํด๋ž˜์Šค ๋“ฑ๋ก>

1. admin์‚ฌ์ดํŠธ์— modelํด๋ž˜์Šค๋ฅผ ๋“ฑ๋กํ•˜๋Š” ์ด์œ ๋Š”?

  • ๋ชจ๋ธ ํด๋ž˜์Šค๋งŒ ๋“ฑ๋กํ•˜๋ฉด, CRUD ์›น ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ admin์—์„œ ์ œ๊ณต
  • ํŠน์ • ๋ชจ๋ธํด๋ž˜์Šค๋ฅผ admin์— ๋“ฑ๋กํ•˜๋ฉด, ํ•ด๋‹น ๋ชจ๋ธ์„ GUI ํ™˜๊ฒฝ์—์„œ ๊ด€๋ฆฌ ๊ฐ€๋Šฅ
  • admin.py ํŒŒ์ผ ๋‚ด์— ์›ํ•˜๋Š” ๋ชจ๋ธ์„ import, register, unregister ์ง„ํ–‰
  • admin.site.unregister ๊ธฐ๋Šฅ์€ ๊ธฐ๋ณธ ์œ ์ € ๋ชจ๋ธ์˜ ๋“ฑ๋ก์„ ํ•ด์ œํ•˜๋Š” ๋“ฑ์˜ ์šฉ๋„๋กœ ์‚ฌ์šฉ

 

2. Model Admin 3๊ฐ€์ง€ ๋“ฑ๋ก๋ฒ• 

๋ฐฉ๋ฒ•โ‘  - ๊ธฐ๋ณธ ModelAdmin์œผ๋กœ ๋“ฑ๋ก.

from django.contrib import admin 
from .models import Entries

admin.site.register(Entries) 

๋ฐฉ๋ฒ•โ‘ก - admin.ModelAdmin ์ƒ์†์„ ํ†ตํ•ด ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ๋“ฑ๋ก.

from django.contrib import admin 
from .models import Entries

class EntriesAdmin(admin.ModelAdmin): 
	list_display = ['content', 'title' ] 

admin.site.register(Entries, EntriesAdmin)

๋ฐฉ๋ฒ•โ‘ข - ์žฅ์‹์ž(decorator) ํ˜•ํƒœ๋กœ ๋“ฑ๋ก.

from django.contrib import admin 
from .models import Entries

@admin.register(Entries) 
class EntriesAdmin(admin.ModelAdmin): 
	list_display = ['id', 'title', 'content'] 
	list_display_links = ['id', 'title']

 

3. admin ์‚ฌ์ดํŠธ์˜ CRUD๊ธฐ๋Šฅ

class Entries ๋“ฑ๋ก๋จ

3-1) create

3-2) update

3-3) delete