python - models.py 中的函数是否应该驻留在类之外?

标签 python django class django-models

在我的 models.py 中,我有几个类和几个管理器类。
我有一些方法是模型使用的通用方法,但不一定是模型的一部分。

例如:

def profile_photo_upload_loc(instance, filename):
        return "profile_photo/%s/%s" % (instance.user, filename)

class Profile(models.Model):
    profile_photo = models.ImageField(
        upload_to=profile_photo_upload_loc,
        null=True,
        blank=True,
        width_field='width_field',
        height_field='height_field',
        verbose_name='Profile Image',
    )  

模型文件中类之外的独立函数是否可以?什么时候合适,什么时候函数应该在类中?

最佳答案

独立函数是那些可以在多个模型中使用的函数,比如你写的函数可以用于其他模型图片上传,

那些写在模型类中的函数只能与该模型实例一起使用,不能与其他模型一起使用,

如果你尝试将一个函数与其他模型实例一起使用,它将给出一个错误

关于python - models.py 中的函数是否应该驻留在类之外?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47108320/

相关文章:

c++ - 创建顺序类对象

python - 为特定包覆盖我公司的专有 pypi 存储库 (kaggle)

python - 在 python 中使用二进制向量评估预测

python - 提高重复 groupby 操作的性能

python - wagtail AbstractImage、ParentalManyToManyField 和 ClusterableModel

python - Django:合并来自表单和数据库的文本

perl - 包含 Perl 类文件

java - 方法中的私有(private)类 - java

python - 为什么设置自动解包范围,但列表不?如何使用它?

Django 2 模型 1 形式