django在后续提交中添加报价

django在后续提交中添加报价,django,Django,目标是:当用户提交表单时,使用一个视图将提交的数据发送到数据库,然后重定向回表单,但要预先填充数据。这在很大程度上是可行的,但是我的实现中的一些东西是在字符串周围加上额外的引号。现在,我只是使用一个超级简单的表单,顺便说一句。我输入Billy,预弹出是:“Billy”,如果我再次单击提交,它会返回为:“\”Billy\”,然后是“\”Billy\\”,等等(无论如何,就我测试而言) 有关意见如下: def editUsers(request): if request.method ==

目标是:当用户提交表单时,使用一个视图将提交的数据发送到数据库,然后重定向回表单,但要预先填充数据。这在很大程度上是可行的,但是我的实现中的一些东西是在字符串周围加上额外的引号。现在,我只是使用一个超级简单的表单,顺便说一句。我输入
Billy
,预弹出是:
“Billy”
,如果我再次单击提交,它会返回为:
“\”Billy\”
,然后是
“\”Billy\\”
,等等(无论如何,就我测试而言)

有关意见如下:

def editUsers(request):
    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = usersForm(request.POST)
        # check whether it's valid:
        # process the data in form.cleaned_data as required
        # redirect to a new URL:
        name = json.dumps(form.data['user_name'])
        request.session['editUserName'] = name

        # call out to limboLogic.py to update values

        test = name
        return redirect('../users')
    # if a GET (or any other method) we'll create a blank form
    else:
        return redirect('../users')

from .forms import *

def users(request):
    form = None

    if 'editUserName' not in request.session:
        # create a blank form
        form = usersForm()
    else:
        # form = equipmentForm(initial='jim') - used to make sure I was branching the if/else correctly
        form = usersForm(initial={'user_name':request.session['editUserName']}, auto_id=False) #limboLogic.GetUserInfo(name))
    return render(request, 'limboHtml/UserManagement.html', {'form': form})
形式很简单:

class usersForm(forms.Form):
    user_name = forms.CharField(label='New User\'s  name', max_length=100)
模板为:

{% extends "base.html" %}

{% block content %}
 <div class="row">
    <p>This is the user management page</p><br>
    <form action="/edit/users.html" method="post">
        {% csrf_token %}
        {{ form }}
        <input type="submit" value="OK">
    </form>
    <br><p class="bold">This is below the form</p>
  </div>
{% endblock %}
{%extends“base.html”%}
{%block content%}
这是用户管理页面


{%csrf_令牌%} {{form}}

这在表格下方

{%endblock%}

想法?

我不太清楚这里的核心是什么,但问题在于我使用了一个json类。我用它作为指导并设法解决了这个问题。请注意,如果:

name=form.cleaned_data['user_name']
工作正常

name=json.dumps(form.data['user\u name'])
不会

目前的整体功能如下:

def editUsers(request):
    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = usersForm(request.POST)
        # check whether it's valid:
        # process the data in form.cleaned_data as required
        # redirect to a new URL:
        if form.is_valid():
            name = form.cleaned_data['user_name']
            # name = json.dumps(form.data['user_name'])
            request.session['editUserName'] = name

            # call out to limboLogic.py to update values

            test = name
            return redirect('../users')
    # if a GET (or any other method) we'll create a blank form
    return redirect('../users')

我不太清楚这里的核心是什么,但问题在于我使用了一个json类。我用它作为指导并设法解决了这个问题。请注意,如果:

name=form.cleaned_data['user_name']
工作正常

name=json.dumps(form.data['user\u name'])
不会

目前的整体功能如下:

def editUsers(request):
    if request.method == 'POST':
        # create a form instance and populate it with data from the request:
        form = usersForm(request.POST)
        # check whether it's valid:
        # process the data in form.cleaned_data as required
        # redirect to a new URL:
        if form.is_valid():
            name = form.cleaned_data['user_name']
            # name = json.dumps(form.data['user_name'])
            request.session['editUserName'] = name

            # call out to limboLogic.py to update values

            test = name
            return redirect('../users')
    # if a GET (or any other method) we'll create a blank form
    return redirect('../users')