django中如何更新已有的数据(2023年最新分享)

2023-03-08 21:34:16 16 0
卡卡

导读:本篇文章恰卡编程网来给大家介绍有关django中如何更新已有的数据的相关内容,希望对大家有所帮助,一起来看看吧。

如何更新django中的一个模块

1,首先打开eclipse在主要的视图界面找到最上方的window点击,然后将看到showview的选项,然后在右边就会出现你要显示的视图。2,如果在这里边没有要显示的视图,可以点击other,那里边都有,可以根绝快速查询进行模糊查询,找到以后双击即可。3,可以再左下角上选择你需要显示的视图。那个大同小异,等选择了需要显示的视图后,可以拖拽控制它现实的位置。

django中如何更新已有的数据(2023年最新分享)

models.py中增加了字段,django中怎样更新

如果你是使用django1.7以上,那么自带migrations功能,可以在生成迁移文件后,打开0001_initial.py(类似这样的文件, 需要与你对应的app关联起来,就是models所在的路径下中的migrations文件夹),然后修改里面中models中对应的class model(),然后找到类似这个operations = [

migrations.CreateModel(...),

# mysql specific

migrations.RunSQL('alter table 表名 auto_increment=9995'),#数据库不同,语句可能不同

]

其实这个可以通过修改数据库中的表进行操作。这样比较快。自己多找点资料吧。

django中user扩展表中数据怎么更新

在models.py 中增加如下扩展user的类:

#==================扩展用户====================================

class UserProfile(models.Model):

user = models.OneToOneField(User)

major = models.TextField(default='', blank=True)

address = models.CharField(max_length=200,default='',blank=True)

def __unicode__(self):

return self.user.username

def create_user_profile(sender, instance, created, **kwargs):

"""Create the UserProfile when a new User is saved"""

if created:

profile = UserProfile()

profile.user = instance

profile.save()

#post_save.connect(create_user_profile, sender=User)

""" 不明白的是,我一定注释掉上面这一行,才不会出错,否则会有Duplicate entry '2' for key 'user_id'") ,看意思是,重复了,但不明白为什么重复,注释掉上面的之后,一切正常,但与官方文档又有差异了,迷惑中"""

#==================扩展用户结束================================12345678910111213141516171819

还需要修改admin.py

"""用户模块扩展"""

class ProfileInline(admin.StackedInline):

model = UserProfile

#fk_name = 'user'

max_num = 1

can_delete = False

class CustomUserAdmin(UserAdmin):

inlines = [ProfileInline,]

admin.site.unregister(User)

admin.site.register(User, CustomUserAdmin)

"""用户模块扩展"""12345678910111213

修改settings.py 的配置,增加

"""用户模块扩展部分"""

AUTH_PROFILE_MODULE = 'djangoadmin.myadmin.UserProfile'

"""用户模块扩展完成"""123

按照官方的解释,这里是app label加上扩展类的名字. 应该也就是创建的app的名字,官方推荐的方式就两个部分用”.”连接起来,我这里有三个部分,也没有报错。

然后运行 python manage.py syncdb ,这是会在数据库中创建响应的表,并且有user_id这个外键字段.

最后,我们来运行一下程序,并进入到增加用户界面中,你会发现,你扩展的字段都显示出来了

每次增加用户,都会在扩展的表中增加相应的数据,修改的时候,也会修改响相应的数据,通过 user_id 来关联,这样就完成了user model的扩展。

如果要获取扩展表中的内容,可以通过 request.user.get_profile().address 这种方式来获取. 得到 User对象后,就能很方便的得到扩展的类.

结语:以上就是恰卡编程网为大家介绍的关于django中如何更新已有的数据的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。

收藏
分享
海报
0 条评论
16
上一篇:django框架如何返回图片? 下一篇:django写的代码怎么卖(django做什么的)

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码