Django CBV根据表单数据返回不同的页面

时间:2016-12-11 06:04:20

标签: django django-views

使用CreateView,我试图根据表单中选择的项目保存并返回一个URL。这适用于锻炼日志网站,根据第一种形式输入的信息,您指向的第二种形式基于您想要的锻炼类型。我想在没有Javascript的情况下这样做:

class WorkoutLogCreateView(CreateView):
    model = Workout_Log
    template_name = 'workout/workout_log_create.html'
    fields = ['date_time', 'modality', 'workout_type', 'workout_model']

    #something like this:
    def get_success_url(self):
        if workout_type = '5 rounds'
            return reverse('five-rounds-log-create')
        elif workout_type = 'Drop Reps'
            return reverse('drop-reps-log-create')
        else 
            return reverse('workout-log-menu')

    def get_context_data(self, **kwargs):
        context = super(WorkoutLogCreateView, self).get_context_data(**kwargs)
        context['action'] = reverse('workout-log-create')
        return context

1 个答案:

答案 0 :(得分:0)

public class FileUploadController : Controller { public ActionResult Index() { return View("ExcelUpload"); } } 方法中,您可以使用get_success_url访问该对象。

self.object