初学django,感觉所有的model和方法都写在models和views里面很难受,所以像将那些方法单独的写在一个py里,然后我就疯狂碰壁了。不过最后还是搞定了
起初我的思路是将py文件和views放在一块,本想着是可以像py脚本那样,直接from a import m ,但是这样错了,显示没有找到该脚本

后来问了一个django大佬,然后知道了 需要 这样导入同文件夹下的模块 from .a import m

后来又感觉如果一直添加脚本的话,那么app的文件夹下面就会非常的乱了,所以考虑第二种的方案:将脚本放在自定义的文件夹下
这样做就涉及到自定义的模块导入问题。python 的模块查找原理是这样的:
1、先在当前文件目录下查找。
2、再到标准库安装路径去查找
3、到path环境变量里面的路径去查找
网上搜到自定义模块导入的方法有:
自定义库的路径添加到Python的库路径中去
import sys
sys.path.append(r’your_path’)
个人不喜欢这样做,于是将在每个自定义的文件夹下新建一个文件init 让文件夹变成一个pakage
__init__.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包
这样就可以通过一下方式直接导入自定义的模块
from polls.scan.a import m
定义好目录结构以后,记得去urls.py中去修改一下路由

这是就完美的解决了问题
网友评论