Как я могу создать представление создания на основе универсального класса для модели?

Я пытаюсь сделать шаблон Django для функциональных представлений. Любая помощь здесь очень приветствуется, поскольку в документации показаны примеры для представления шаблона и представления списка, но я нашел очень мало для общих представлений на основе модели. Не хватает ли мне примера в документации?

У меня есть модель, которая представляет запись в календаре. Есть внешний ключ для другого объекта (не пользователя), которому принадлежит запись. Я хочу просто создать запись, убедившись, что внешний ключ записи установлен правильно, а затем вернуть пользователя на соответствующую страницу календаря.

Я не знаю, однако, как общие представления на основе классов получают их аргументы URL, и я не понимаю, как установить success_url, чтобы он повторно использовал идентификатор, который был первоначально передан URL-адресу создания. Опять же, заранее благодарю вас за вашу помощь.

По сути, я спрашиваю, что такое универсальное представление на основе классов, эквивалентное следующему:

def create_course_entry(request, class_id):
'''Creates a general calendar entry.'''
if request.method == 'POST':
    form = CourseEntryForm(request.POST)
    if form.is_valid():
        new_entry = form.save(commit=False)
        new_entry.course = Class.objects.get(pk=class_id)
        new_entry.full_clean()
        new_entry.save()
        return HttpResponseRedirect('/class/%s/calendar/' % class_id)
else:
    form = CourseEntryForm()

return render_to_response('classes/course_entry_create.html',
        { 'class_id': class_id, 'form': form, },
        context_instance=RequestContext(request))
7
задан Issac Kelly 12 April 2011 в 04:40
поделиться