Python-3.x
查看历史

相关内容

Django将已经存在的字段改为外键

我有一个Django模型,它之前是这样的class Car(models.Model): manufacturer_id = models.IntegerField()然后还有另一个名为Manufacturer的模型,id字段所指的就是它。然而,后来我意识到使用Django自带的外键功能,会更方便。因此,我将这个模型改为现在这样class Car(models.Model): manufacturer = models.ForeignKey(Manufacturer)这次修改似乎一下就弄好了,查询出来的结果也没有任何报错,但是当我试着运行数据迁移的时候,Django输出了以下结果- Remove field manufacturer_id from car - Add field manufacturer to car执行这个迁移会清除所有已经存在于数据库里的关系,所以我并不想这么做。我其实并不想做任何的迁移,毕竟像Car.objects.get(manufacturer__name="Toyota")这样的查询没有一点问题。我更想要一个恰当的数据库外键限制,但不是高优先级的那种。总的来说,我的问题是:是否存在一种迁移方法或者别的,能让我将一个已经存在的字段转变为外键?我不能使用--fake因为我需要可靠地在开发、生产和同事的电脑上工作。内容来源于 Stack Overflow, 遵循 CCBY-SA 4.0 许可协议进行翻译与使用。原文链接:Django change an existing field to foreign key
2024-08-17 16:03:04

Python的__str__()方法

Python的__str__()方法说明:本文章的Python代码测试基于Python3.x__str__()方法的作用:不定义__str__方法,print输出对象实例时,默认打印对象实例的内存地址定义__str__方法,print输出对象实例时,自动调用此方法返回值必须是字符串在Python中,方法名形如__xxx__()的方法表示此方法具有特殊的功能,也称为魔法方法验证1. 不定义__str__方法,print输出对象实例时,默认打印的是对象的内存地址# 创建学生类 class Stu(): def __init__(self, name, age): self.name = name self.age = age s = Stu("张三", 18) print(s)输出:<__main__.Stu object at 0x000002526AF05A60>2. 定义__str__方法,print输出对象实例时,自动调用此方法class Stu(): def __init__(self, name, age): self.name = name self.age = age def __str__(self): return "学生" + self.name + "的年龄是" + str(self.age) s = Stu("张三", 18) # 打印对象实例 print(s) 输出:学生张三的年龄是183. 返回值必须是字符串class Stu(): def __init__(self, name, age): self.name = name self.age = age def __str__(self): return self.age s = Stu("张三", 18) print(s)输出:--------------------------------------------------------------------------- TypeError Traceback (most recent call last) 7 8 s = Stu("张三", 18) ----> 9 print(s) TypeError: __str__ returned non-string (type int)因为__str__()返回值非字符串,所以报错TypeError: __str__ returned non-string (type int)原文链接:https://blog.csdn.net/what_how_why2020/article/details/114748495
2024-08-29 11:21:32

(✅已修复)弦圈编辑器上传图片已知bug,未知原因导致上传图片模糊

这是个很早之前就存在的bug了,一直都没解决,并且我也不知道具体是什么原因。原本这个bug也只是偶尔发生,已经有很长一段时间没有再遇过了。结果今天我写Android Studio安装教程 - Windows版这篇文章的时候,又遇到这个问题了。刚刚上传前面几张图片的时候一切正常,直到上传最后几张图片时,我发现上传的照片又很糊了,并且无论上传多少次,按多少比例截图,最后结果都一样。而且无论是复制来的图片,还是直接上传图片,都一样。见下面几张图这些图片都是原图很清晰,但上传后就很糊了。目前已确定问题发生在Django后端,具体原因仍在排查当中......更新:经过排查,确定问题跟图片模型有关系,我使用了django-resized的ResizedImageField来将上传的图片转化为webp格式。一般正常使用都是没事的,但是有些时候上传图片的次数多了以后,就会出现这种bug。为什么会出现这个问题,即便我看过django-resized源代码也不清楚,搞不好是pillow的问题?但我觉得应该跟它无关。最后我将ResizedImageField改回了ImageField,然后自己用pillow来实现webp的转换,目前测试已经没问题了。
2025-03-26 21:50:41