无法保存表单Django

pdf2e

我正在尝试保存表单以更新现有用户,但无法使其正常工作。当我尝试保存表单时发生错误。控制台将在视图中显示错误(内部服务器错误)。

形式:

class updateFirstName(forms.ModelForm):

  class Meta:
    model = User
    fields = ('first_name',)
    def __init__(self, *args, **kwargs):
        super(updateInfoForm, self).__init__(*args, **kwargs)
        self.helper = FormHelper()
        self.helper.form_id = 'id-updateFirst'
        self.helper.form_class = 'blueForms'
        self.helper.form_method = 'post'
        self.helper.form_action = '/login/userInfoChange/'
        self.helper.add_input(Submit('submit', 'Submit'))

看法:

@json_view
@csrf_exempt
def userInfoChange(request):
    context = RequestContext(request)
    if request.method == 'POST':

        user = User.objects.get(username=request.user.username)
        user_form = updateFirstName(request.POST)
        print user_form
        if user_form.is_valid():
                user_form.save()

                print "Valid Form"
                return {'success': True}

的HTML:

<form id="updateUsername">
              <div class="input-group">
                  <span class="input-group-btn">
                  <button class="btn btn-success" type="button" id="submit-username">Change</button>
                  </span>
                   <input type="text" class="form-control" id="id_firstname" placeholder="First Name: {{user.first_name}}">
                   <script type="text/javascript">
                          $('#submit-username').click(function(){

                                  $.ajax({//begin
                                          type: 'POST', 
                                          url:  '/login/userInfoChange/', 
                                          data: $('#updateUsername').serialize(),    
                                          success: function(result){
                                                  console.log('updateUsername');
                                          }
                                        });

                          });

                   </script>
              </div><br></form>

模型:

class UserProfile(models.Model):
       user = models.OneToOneField(User)
       confirmation_code = models.CharField(max_length=128)
       reset_code = models.CharField(max_length=128)
       address_lineOne = models.CharField(max_length=128)
       address_lineTwo = models.CharField(max_length=128)
       city = models.CharField(max_length=128)
       State = models.CharField(max_length=128)
       zipCode = models.CharField(max_length=10)
       def __unicode__(self): 
    return self.user.username

解决方案:

first_name = request.POST.get('first_name')
user.first_name = first_name
user.save()

感谢ejey解决了我的csrf ajax问题。

欧内斯特·朱比(Ernest Jumbe)

如果打算使用ajax进行发布,则应使用如下查看方法:

def some_ajax_view(request):
    data = request.POST.copy()
        if request.is_ajax() and request.POST:
             ...
             ...

您可以获取有关如何处理ajax请求的更多信息,而不必在csrf上妥协https://docs.djangoproject.com/en/dev/ref/contrib/csrf/#ajax

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Django-表单无法保存

来自分类Dev

Django表单无法正确保存

来自分类Dev

无法保存 Django 模型表单集

来自分类Dev

Django,数据表单无法保存

来自分类Dev

无法使用此自动完成功能保存Django表单

来自分类Dev

具有多对多关系的Django表单无法保存

来自分类Dev

django无法在数据库中保存表单

来自分类Dev

Django表单不保存

来自分类Dev

Django:独立保存表单

来自分类Dev

在 Django 中保存表单

来自分类Dev

Django save()方法将无法保存我的表单,也无法创建新实例

来自分类Dev

嵌套表单属性无法保存

来自分类Dev

使用保存的表单而不是清洁的表单 django

来自分类Dev

Django表单未保存数据

来自分类Dev

Django-保存表单的位置

来自分类Dev

单击按钮保存Django表单

来自分类Dev

Django模型表单未保存

来自分类Dev

保存Django表单会产生错误:无法排序的类型:int()> str()

来自分类Dev

即使一切似乎都没事,Django表单仍然无法保存

来自分类Dev

无法访问Django模板上的“羽毛笔”表单字段中保存的文本

来自分类Dev

django- jquery日期时间选择器无法保存具有选定日期的表单

来自分类Dev

Django ModelForm无法保存

来自分类Dev

无法删除Django中的表单表单内联表单集

来自分类Dev

嵌套表单无法保存Rails 4

来自分类Dev

如何使用Django表单保存日期/时间

来自分类Dev

保存前如何修改Django表单?

来自分类Dev

django保存表单-覆盖旧行

来自分类Dev

带有表单集的django保存模型

来自分类Dev

在Django上保存表单后重定向