0

設置默認隱藏值與ID我有在models.py這兩個傢伙:在ManyToManyField

class Tag(models.Model): 
    name = models.CharField(max_length=100) 
    movies = models.ManyToManyField(Movie) 

class Movie(models.Model): 
    title = models.CharField(max_length=120) 
    release_year = models.IntegerField('release year', default=0000) 
    plot = models.CharField(max_length=400) 
    pub_date = models.DateTimeField('date published') 

,這在views.py

class TagCreate(LoginRequiredMixin, CreateView): 
    model = Tag 
    success_url = '/movies/ratings/' 
    fields = ["name"] 

我試着設置在當前電影的價值標籤類「電影」字段我「taggin」 的網址是:

url(r'^(?P<movie_id>\d+)/tag/$', TagCreate.as_view(), name='tag'), 

Thanxs在廣告vanced!

回答

2

不要將其作爲窗體上的隱藏字段來執行。數據在URL中,你可以從那裏獲取。要做到這一點的地方是form_valid

def form_valid(self): 
    result = super(TagCreate, self).form_valid() 
    movie = Movie.objects.get(pk=self.kwargs['movie_id']) 
    self.object.movies.add(movie) 
    return result