Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
232 views
in Technique[技术] by (71.8m points)

django - 'Tribe' object has no attribute 'tribe_id'

I have a view which should redirect the user to the new tribe that he created. but I don't know how to get the tribe_id for it to work.

views.py

def tribeview(request, tribe_id):
    tribe = get_object_or_404(Tribe,pk=tribe_id)
    playlist = tribe.playlist_set.all()
    context = {  'tribe': tribe, 'playlists':playlist }
    return render(request, 'app/tribe.html', context)


class create_tribe(CreateView):
    model = Tribe
    form_class = TribeForm
    template_name = 'app/create_tribe.html'

    def form_valid(self, form):
        tribe = form.save(commit=False)
        tribe.chieftain = self.request.user
        tribe.save()
        return super().form_valid(form)

    def get_success_url(self):
        return reverse('app:tribe-view', args={'tribe': self.object.tribe_id})

urls.py

app_name = 'app'
urlpatterns = [
    path('', views.index, name='index'),
    path('tribe/<int:tribe_id>',views.tribeview,name='tribe-view'),
    path('tribe/<int:tribe_id>/playlist/<int:playlist_id>',views.playlistview,name='playlist-view'),
    path('new_tribe', login_required(create_tribe.as_view()), name="new-tribe"),
]

models.py

class Tribe(TimeStamped):
    name = models.CharField(max_length=200,unique=True)
    chieftain = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE)
    tribe_members = models.ManyToManyField(Member)

    def __str__(self):
        return self.name[:80]
question from:https://stackoverflow.com/questions/65885488/tribe-object-has-no-attribute-tribe-id

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...