代码之家  ›  专栏  ›  技术社区  ›  Taylor Nelms

Django登录到wxpython窗口?

  •  0
  • Taylor Nelms  · 技术社区  · 7 年前

    我正在编写一个实用程序来启动Django服务器进程,该进程将其日志输出到wxpython窗口中的textcrl。不幸的是,有两种不同的方法导致了一些奇怪的问题:操作系统(在本例中是OSX)在几个成功的日志条目之后,由于抱怨“非法指令”,使程序崩溃。

    我目前正在通过实现一个logging.handler子类来实现这一点,该子类将事件发布到包含要在窗口中显示的日志记录的WX。有更好的方法吗?

    谢谢!

    1 回复  |  直到 7 年前
        1
  •  1
  •   Mike Driscoll    7 年前

    wxpython要求它是主线程,所以我猜这可能是您问题的根本原因。不过,你有几个好方法可以尝试。

    首先,您可以从wxpython程序以线程的形式启动django服务器进程。然后可以使用wxpython的线程安全方法( wx.CallAfter , wx.PostEvent )与用户界面通信。

    或者您可以单独启动django并登录到一个文件。然后启动wxpython,让它基本上跟踪日志文件。

    推荐文章