python - 如何将值赋值到字符串基 ForeignKey 中?

标签 python django

我必须从基于外键的 Modal 中获取值,但我的外键就像动态地从模态更改为模态。 这是我的代码

 def get_object(self, queryset=None):
        data = self.model.objects.filter(pk=queryset)
        fk = self.fk_name + '_id'
        inline_data = self.inline_model.objects.filter(#fk_name=queryset)
#fk_name

请帮我解决这个问题。

最佳答案

您可以使用字典解包:

 def get_object(self, queryset=None):
    data = self.model.objects.filter(pk=queryset)
    fk = self.fk_name + '_id'
    inline_data = self.inline_model.objects.filter(<b>**{fk: queryset}</b>)

如果 fk_namefoo,我们将调用 .filter(…) 函数 .filter(foo_id=queryset )

但通常您不能直接使用 queryset 进行过滤,因为 QuerySet 是对象的集合,而不是单个对象。我们可以利用 __in lookup [Django-doc]为此:

 def get_object(self, queryset=None):
    data = self.model.objects.filter(pk=queryset)
    <b>fk = f'{self.fk_name}_id__in'</b>
    inline_data = self.inline_model.objects.filter(**{fk: queryset})

关于python - 如何将值赋值到字符串基 ForeignKey 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66406886/

相关文章:

Python 请求 SSL 问题

python - 如何计算多个csv文件中的行数

django - 搜索后分页的第二页在django中不起作用

css - 从 Django CMS 中删除默认 CSS

python - 使用 $(System.AccessToken) 在 Azure DevOps 构建管道上使用私有(private) git 存储库中的 tox 安装包

Python正则表达式匹配多次

python - LSTM 的 model.reset_states 会影响模型中的任何其他非 LSTM 层吗?

python gettext 错误 : Can't convert '__proxy__' object to str implicitly

python - 这个运算符在 django `reduce(operator.and_, query_list)` 中意味着什么

database - Django 在 syncdb 时以自定义方式初始化数据库