Django只用Python编写吗?

时间:2016-07-29 07:54:00

标签: python django

我在运行segmentation fault时遇到Django。(这只是带有测试服务器的简单代码)

在我查找时,Django是用Python编写的。

我想确保如果Django仅使用python而没有任何C libraries或可能会产生分段错误的内容,那么我可以说分段错误是由于{ {1}}本身。

Python interpreter仅使用Django

编写

------- -------- Eidt

其他一些python包直接在包中导入C库,例如pythonlxml

因此,即使我完美地安装了python,它也会使分段错误访问第三部分cx_Oracle

我的问题是,如果我完全安装python,Django永远不会产生分段错误?

因为wrong C libraries仅在python解释器上运行,而不是直接访问第三部分C库。

我怀疑安装Python而不是django时一定有问题。(我试图在AIX中安装python)

2 个答案:

答案 0 :(得分:2)

  

这只是带有测试服务器的简单代码

Django本身完全用python编写(加上少量的javascript和shell脚本)。

django真的是唯一安装的python包吗?即使对于简单的网站,它也很少见。

通过pip安装的许多软件包不是纯python(例如mysqlclient-python:64%python / 36%C代码)。即使包纯python,也可以使用ctypes直接调用C库(例如mysql-ctypes包)。

即使使用无错误的解释器,链接C库中的错误(例如libmysql)或包含/ C接口的python包也可能导致段错误。

答案 1 :(得分:1)

Django只是Python,它没有C代码。它的某些部分具有使用C的依赖性,例如GeoDjango具有用C语言编写的依赖项。

添加

TypoScriptFrontendController

到您的Django设置文件,并希望它打印一个堆栈跟踪,显示崩溃发生的位置。请参阅this blog post

编辑:当然,如果您没有使用Python 3.3或更新版本

,这确实需要您ContentObjectRenderer