request.session['list'] = [] if request.method =='POST': newrecord = request.POST['market'] tmp = request.session['list'] tmp.append(newrecord) request.session['market_list'] = tmp
Оказывается, предыдущие данные были перезаписаны новыми
изменить request.session['list'] = [] на
request.session['list'] = []
if not request.session.has_key('list'): request.session['list'] = []
Вы присваиваете пустой список request.session['list'] в первой строке предоставленного вами фрагмента кода.Это по замыслу?В этом случае неудивительно, что tmp всегда заканчивается только одним элементом.
request.session['list']
tmp