在djang数据库表中获取新添加的记录

2024-09-30 01:33:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我在django(开发服务器)中有一个数据库设置,在remote中有一个代理(exe)机器。什么时候我执行代理,代理将数据插入服务器数据库(使用sql查询) (在代理中,我使用python MySQLDb连接并将数据插入DB表。)

在服务器端,我正在循环中等待获取记录,但是我无法使用soft\u row\u obj=EpSoftData.objects.filter文件(unique\u id=un\u id)(尽管我可以在我的数据库中(手动)看到条目)

我的模型文件:

class EpSoftData(models.Model):
    unique_id = models.BigIntegerField(null=True, blank=True)
    ip_address = models.CharField(max_length=60)
    soft_data = models.CharField(max_length=15000, blank=True)
    scan_time = models.DateTimeField()
    err_msg = models.CharField(max_length=3000, blank=True)

    class Meta:
        db_table = u'ep_soft_data'

你知道吗视图.py文件:

def func(un_id):
    while True:
        soft_row_obj = EpSoftData.objects.filter(unique_id = un_id)
        if soft_row_obj :
            return soft_row_obj
            break;   

代理代码:

"INSERT INTO ep_soft_data (unique_id, ip_address, soft_data, scan_time, err_msg) VALUES ('%d','%s', '%s', '%s', '%s')" % (self.unique_id, self.ip_address, json.dumps(self.agentDict), self.scanTime, self.err_msg)

如果使用sql查询插入记录,则Django不会在运行时加载数据。 如何获得唱片??你知道吗

提前谢谢。你知道吗


Tags: 文件数据selfid数据库trueobj代理
2条回答

默认情况下,视图在事务中运行。在事务内部运行的代码看不到在事务外部执行的更改。您应该阅读transactions documentation,了解如何在函数中提交事务,甚至完全禁用事务管理。你知道吗

这就解决了我的问题,每次查询新值前都需要更新,这是缓存。你知道吗

soft_row_obj = EpSoftData.objects.update()

感谢大家的投入

相关问题 更多 >

    热门问题