python - 选择仅具有字符串名称的字段

标签 python django

我有一个看起来像这样的模型:

class WeekOne(models.Model):
    # Required benchmarks for given exercises
    squatBenchmark = 1000
    lungeBenchmark = 250
    stairDaysCountBenchmark = 3

    totalGoals = 4

    squats = models.PositiveIntegerField(default=0)
    lunges = models.PositiveIntegerField(default=0)
    skipStairs = models.BooleanField(default=False)
    stairDaysCount = models.PositiveSmallIntegerField(default=0)
    # Running count of benchmarks met.
    completeCount = models.PositiveSmallIntegerField(default=0)
    # Set to true if benchmarks reached. 
    weekOneComplete = models.BooleanField(default=False)

我想访问字段“squats”,即在变量赋值 amount = user.week_one.squats 中,但是由于 View 和模板的工作方式,我没有访问对 squats 字段的引用,我只有一个字符串 squats。有什么办法可以使用这个字符串来访问那个字段吗?

最佳答案

这就是getattr用于:

amount = getattr(user.week_one, 'squats')

关于python - 选择仅具有字符串名称的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15642817/

相关文章:

python - PostGresQL 根据另一个表中的 ID 列表或主键更新值

Django 1.4(MEDIA_ROOT,STATIC_ROOT,TEMPLATE_DIRS)

python - Django 模板不会将值输出到 HTML 表格单元格

python - 将单个字节写入 python 3.x 中的文件

python - Django 中的元素计数

登录成功后的 Django 重定向

python - 获取对象但无法访问属性

python - 在 Django 中对 STATIC_URL 使用相对与绝对 URL

python - MySQLdb 没有插入...我确实有 cursor.commit()

python - 使用 pandas 加载过滤后的 .tda 文件的最简单方法是什么?