データ・ベースの連結
現在の /music/ のページ。
1) APPL(music)フォルダ内の "models.py" を修正する。
from django.db import models
class Album(models.Model):
artist = models.CharField(max_length=250)
album_title = models.CharField(max_length=500)
genre = models.CharField(max_length=100)
album_logo = models.CharField(max_length=1000)
def __str__(self):
return self.album_title + " - " + self.artist
class Song(models.Model):
#Foreign KeyでAlbum DBと紐付いている
album = models.ForeignKey(Album,on_delete=models.CASCADE)
file_type = models.CharField(max_length=10)
song_title = models.CharField(max_length=250)
def __str__(self):
return self.song_title # Titleを表示させる。
*) 今回の場合、Databaseのテーブルのストラクチャー変更をしていないので、migrationをする必要はない。class Album(models.Model):
artist = models.CharField(max_length=250)
album_title = models.CharField(max_length=500)
genre = models.CharField(max_length=100)
album_logo = models.CharField(max_length=1000)
def __str__(self):
return self.album_title + " - " + self.artist
class Song(models.Model):
#Foreign KeyでAlbum DBと紐付いている
album = models.ForeignKey(Album,on_delete=models.CASCADE)
file_type = models.CharField(max_length=10)
song_title = models.CharField(max_length=250)
def __str__(self):
return self.song_title # Titleを表示させる。
*) この段階で、/music/を表示しても、Song D.Bにはオブジェクトが登録されていないので、Albumの情報しか
相変わらず表示されない。
2) Amin Panelとの連携
from django.contrib import admin
from .models import Album, Song #Song Data Baseの追加
admin.site.register(Album)
admin.site.register(Song) #Song Data Baseの追加
from .models import Album, Song #Song Data Baseの追加
admin.site.register(Album)
admin.site.register(Song) #Song Data Baseの追加
*) この段階で, AdminのDB操作画面に、DBへの登録・管理画面が追加される。
ターミナルからのデータ投入
*現時点では、/music/ は、文頭の表示から変更されていない。
Terminalからobjectの確認
(*上記、terminalのコマンドの続き。)
もう一つのデータ・登録方法 ( 'create' function)
参考)
Django Tutorial for Beginners - 17 - Adding Songs to our Database
https://youtu.be/TnU_I8DKKYQ
Django Tutorial for Beginners - 18 - Related Objects Set
https://youtu.be/uvafEFi2bY4
0 件のコメント:
コメントを投稿