python - 将 QuerySet 结果插入 Django 中的表中

标签 python mysql django django-queryset django-orm

我有一个查询集,我想将该查询集的结果插入到数据库表中(例如 SelectedFeatures)。

all_features = Feature.objects.filter(product_id = selected_product_id)

新表和Feature 表的结构几乎相同,只有一个字段除外。我应该像将记录插入表一样手动插入查询集的所有字段还是有其他方法可以满足此要求?

最佳答案

我喜欢@doniyor的解决方案,但如果您需要更多控制(例如,如果字段名称不完全相同),您可以迭代字段并可能做出一些决定:

for feature in Feature.objects.filter(product_id = selected_product_id).all():
    selected_feature = SelectedFeature()
    for attr in SelectedFeature._meta.get_all_field_names():
         selected_feature.setattr(attr, feature.getattr(attr))
    selected_feature.save()

关于python - 将 QuerySet 结果插入 Django 中的表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27675027/

相关文章:

python - CSRF验证失败。请求被中止。 Django 1.7

python - PyQt 中字典的通用值编辑器 GUI

python - 为什么转置数据以获得多索引数据帧?

php - 加入MySQL;只查询不匹配的表字段

MYSQL 在 group by 语句中使用 AND 而不是逗号

Django Rest框架带有get和post的额外序列化器字段

django - 集成 smartgwt 和 web2py

python - 如何从多值字典中的任何指定值中获取键

Python根据定界符 reshape 字符串列表

mysql - 将多个唯一键合并为一个