2017-06-15 75 views
1

我創建了一個模型名稱歌曲,並且我製作了一個將歌曲上傳到網站的表單。我不知道如何將歌曲保存到特定的用戶,這樣我就可以在數據庫中查詢所有用戶上傳的歌曲如何將對象保存到django中的用戶1.10

我的模型:

class Song(models.Model): 
    user=models.ForeignKey(User, null = True) 
    song_name = models.CharField(max_length = 100) 
    audio = models.FileField() 

筆者認爲:

class SongCreate(CreateView): 
    model = Song 
    fields=['song_name','audio'] 

摘要:
我可以上傳歌曲,但我不能將它們鏈接到用戶
PS我很新的Django的

回答

3

您可以使用CreateViewform_valid方法將用戶分配給歌曲並保存。

from django.shortcuts import redirect 
from django.views.generic.edit import CreateView 

class SongCreate(CreateView): 
    model = Song 
    fields=['song_name','audio'] 

    def form_valid(self, form): 
     song = form.save(commit=False) 
     song.user = self.request.user 
     song.save() 
     return redirect(self.get_success_url()) 
相關問題