我以前的旧结构是这样的:
awk_filter='''! /#/ && !seen[$1]++ { print $1 }'''
p1 = subprocess.Popen(['awk', awk_filter],
stdin=open('File1.txt', 'r'),
stdout=subprocess.PIPE)
p2 = subprocess.Popen(['sort', '-u'],
stdin=p1.stdout,
stdout=subprocess.PIPE)
p3 = subprocess.Popen(['awk', awk_filter],
stdin=open('File2.txt', 'r'),
stdout=subprocess.PIPE)
p4 = subprocess.Popen(['sort', '-u'],
stdin=p3.stdout,
stdout=subprocess.PIPE)
p5 = subprocess.Popen(['comm', '-3',
('/dev/fd/%d' % (p2.stdout.fileno(),)),
('/dev/fd/%d' % (p4.stdout.fileno(),))],
pass_fds=(p2.stdout.fileno(), p4.stdout.fileno()),
stdout=subprocess.PIPE)
p6 = subprocess.Popen(['tr', '-d', '\t'],
stdin=p5.stdout,
stdout=subprocess.PIPE)
result = p6.communicate()
我已将此移至
awk
完成此更改后,lines_1 = set(line.split()[0] for line in open('File1.txt', 'r') if not '#' in line)
lines_2 = set(line.split()[0] for line in open('File2.txt', 'r') if not '#' in line)
not_common = (lines_1 - lines_2) | (lines_2 - lines_1)
for line in sorted(not_common):
print line
和models.py
class Model1
class Model2
...
将不再检测到对模型所做的任何更改。知道如何解决这个问题吗?
编辑:
我已经转移到此:删除models.py并将modelsdir重命名为模型
现在看起来像这样:
modelsdir
__init__.py
model1.py
class Model1
model2.py
class Model2
models.py
from modelsdir.model1 import Model1
from modelsdir.model2 import Model2
不幸的是,这仍然没有检测到任何变化。
答案 0 :(得分:0)
我有一个以这种方式构建的django项目,我必须在modelsdir/__init__.py
文件中添加它:
from .model1 import *
from .model2 import *
我也没有将原始models.py
文件保留在我的顶级应用文件夹中。
这是在Django 1.10 / 1.11和Python 3上。