更新表单中数据库中的现有行-Django

用户名

我在数据库中有一个现有条目,并且我想在我的views.py中检查该条目是否已存在于数据库中,如果存在,则新值将替换该行中的旧数据,否则为该行创建一个新行。该用户。我怎样才能做到这一点?

#models.py
class Member(models.Model):
username = models.CharField(max_length=16, primary_key=True)
password = models.CharField(max_length=16)
profile = models.OneToOneField(Profile, null=True)
following = models.ManyToManyField("self", symmetrical=True)

class Message(models.Model):
user = models.ForeignKey(Member, related_name='%(class)s_user')
recip = models.ForeignKey(Member, related_name='%(class)s_recip')
pm = models.BooleanField(default=True)
time = models.DateTimeField()
text = models.CharField(max_length=4096)


def __str__(self):
    return self.username



#forms.py
class UploadFileForm(forms.ModelForm):
    class Meta:
        model = ProfilePic
        fields = ['text','thumbnail']

#models.py
class ProfilePic(models.Model):
    user = models.ForeignKey(Member, related_name='%(class)s_user', null=True)
    text = models.TextField(max_length=4096)
    thumbnail = models.FileField(upload_to='media', null=True)

#views.py
if request.POST:
username = request.session['username']
member_obj = Member.objects.get(pk=username)

    form = UploadFileForm(request.POST,request.FILES)
    profile_pic = form.save(commit=False) 

   **#checking if username already exists in the DB:**

    member_obj = Member.objects.update_or_create(username=username)

   **#if yes then replace data in the row with the new one,
     # if not create a new row**  

    profile_pic.user = member_obj
    profile_pic.save()
尼维

试试这个,

if request.method == 'POST':
    form = UploadFileForm(request.POST, request.FILES)
    if form.is_valid():
        cd = form.cleaned_data
        username = request.session['username']
        if Member.objects.filter(username=username).exists():
            member_obj = Member.objects.get(username=username)
            profile_pic = ProfilePic.objects.get(user=member_obj)
            profile_pic.user = member_obj
            # you can update other fields by using object.field_name (e.g. profile_pic.text = request.POST.get['text']
            profile_pic.save()
        else:
            ProfilePic.objects.create(user=username)
        return HttpResponse('success')
    else:
        return HttpResponse(form.errors)
else:
    form = UploadFileForm

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当输入与 Django 中的一行匹配时,如何更改现有数据库中的值

来自分类Dev

数据库中的Django更新对象

来自分类Dev

数据库中的Django更新对象

来自分类Dev

Django:为数据库中的现有条目生成子弹字段数据

来自分类Dev

在 Django 数据库中插入表单数据

来自分类Dev

如何将NullableBooleanField添加到现有的Django数据库中?

来自分类Dev

django 如何为 postgresql 数据库中现有的多对多表定义模型

来自分类Dev

Django 表单中的复选框不更新数据库

来自分类Dev

与表单django中的模型数据库的自动关系

来自分类Dev

Django WebTest - 我填写并保存表单,数据在新页面中更新但不在数据库中

来自分类Dev

如何通过Django中的模板函数与具有Model的现有数据库进行交互

来自分类Dev

我正在尝试使用 get() 方法更新数据库中的数据,但 get() 在 django 中没有更新

来自分类Dev

我正在尝试使用 get() 方法更新数据库中的数据,但 get() 在 django 中没有更新

来自分类Dev

在Django上更新数据库中的模型对象

来自分类Dev

更新 Django 中的数据库视图结构

来自分类Dev

Django-更新数据库中具有此值的每个字段

来自分类Dev

id 主键是否必须在从检查数据库生成的 Django 模型中针对现有数据库显式定义?

来自分类Dev

现有数据库中Y / N字符串字段上的Django Forms CheckboxInput

来自分类Dev

如何将表单模型中的数据获取到 Django 中的数据库中

来自分类Dev

您如何在Django中自动完成数据库中一种表单的更新信息

来自分类Dev

在 Django 中查询具有一对值的一行的数据库

来自分类Dev

在Django中使用现有数据库

来自分类Dev

在Django Python中使用现有数据库

来自分类Dev

如何为django中的数据库中的当前数据创建一个表单?

来自分类Dev

Django-将表单中的数据保存到数据库中

来自分类Dev

在Django中将除表单数据外的数据添加到数据库中

来自分类Dev

如何检查数据库中是否存在对象,然后将其插入django中的表单

来自分类Dev

创建一个表单并在Django中的数据库中填充值

来自分类Dev

如何使用Django中存储在数据库中的值自动填充表单模板?

Related 相关文章

  1. 1

    当输入与 Django 中的一行匹配时,如何更改现有数据库中的值

  2. 2

    数据库中的Django更新对象

  3. 3

    数据库中的Django更新对象

  4. 4

    Django:为数据库中的现有条目生成子弹字段数据

  5. 5

    在 Django 数据库中插入表单数据

  6. 6

    如何将NullableBooleanField添加到现有的Django数据库中?

  7. 7

    django 如何为 postgresql 数据库中现有的多对多表定义模型

  8. 8

    Django 表单中的复选框不更新数据库

  9. 9

    与表单django中的模型数据库的自动关系

  10. 10

    Django WebTest - 我填写并保存表单,数据在新页面中更新但不在数据库中

  11. 11

    如何通过Django中的模板函数与具有Model的现有数据库进行交互

  12. 12

    我正在尝试使用 get() 方法更新数据库中的数据,但 get() 在 django 中没有更新

  13. 13

    我正在尝试使用 get() 方法更新数据库中的数据,但 get() 在 django 中没有更新

  14. 14

    在Django上更新数据库中的模型对象

  15. 15

    更新 Django 中的数据库视图结构

  16. 16

    Django-更新数据库中具有此值的每个字段

  17. 17

    id 主键是否必须在从检查数据库生成的 Django 模型中针对现有数据库显式定义?

  18. 18

    现有数据库中Y / N字符串字段上的Django Forms CheckboxInput

  19. 19

    如何将表单模型中的数据获取到 Django 中的数据库中

  20. 20

    您如何在Django中自动完成数据库中一种表单的更新信息

  21. 21

    在 Django 中查询具有一对值的一行的数据库

  22. 22

    在Django中使用现有数据库

  23. 23

    在Django Python中使用现有数据库

  24. 24

    如何为django中的数据库中的当前数据创建一个表单?

  25. 25

    Django-将表单中的数据保存到数据库中

  26. 26

    在Django中将除表单数据外的数据添加到数据库中

  27. 27

    如何检查数据库中是否存在对象,然后将其插入django中的表单

  28. 28

    创建一个表单并在Django中的数据库中填充值

  29. 29

    如何使用Django中存储在数据库中的值自动填充表单模板?

热门标签

归档