[Answer]-Add data to database on two seperate pages

1๐Ÿ‘

โœ…

Iโ€™ve done something similar to this before. I asked users to enter a zip code on one page and then based upon that zip code it loaded in different options for the form on the next page. Here is how I did it using request.session

Note that this is is my soultion to MY problem. This may not be exactly what you are looking for but might help you get a start. If anyone has a better solution Iโ€™d love to see it since Iโ€™m not entirely happy with my answer.

views.py

def find_zip(request):                                                                           
    c={}                                                                                         
    form = FindZip()                                                                             
    c['form'] = form                                                                             
    if request.method == 'POST':                                                                 
        form = FindZip(request.POST)                                                                                                       
        c['form'] = form                                                                         
        if form.is_valid():                                                                                      
            zip = form.data['zip']                                                               
            form = ExternalDonateForm(initial={'zip':zip})                                       
            request.session['_old_post'] = request.POST                                          
            c['form'] = form                                                                     
        response = HttpResponseRedirect('/external')                                             

        return response                                                                          

    return render_to_response(                                                                   
        'find_zip.html',                                                                         
        c,                                                                                      
        context_instance=RequestContext(request)       

I then try to retrive that session from the previous view

def donate_external(request):                          
    zip = None                                         
    if request.session.get('_old_post'):               
        old_post = request.session.get('_old_post')    
        zip = old_post['zip']                                            
    )         
    # rest of code ....
๐Ÿ‘คAustin

Leave a comment