def alt_create(request): form = IndexForm() if request.method == 'POST': form = IndexForm(request.POST) if form.is_valid(): # Create new trip first new_trip = Trip(where=request.POST['where'], when=request.POST.get('when')) new_trip.save() if request.user.is_authenticated(): new_trip.author = request.user trip_admin = TripAdmin(new_trip, request.user) else: request.session['trip_id'] = new_trip.id # Now add the why if request.POST.get('why'): new_why = Why(why=request.POST['why'], trip=new_trip) new_why.save() # Finish with the who if request.POST.get('who'): new_who = Who(who=request.POST['who'], trip=new_trip) new_who.save() # Give a nice message messages.success(request, 'Your trip has been created!') return HttpResponseRedirect('/trips/view/%d/' % new_trip.key) return render_to_response('trips/create.html', { 'form': form, }, context_instance=RequestContext(request))