Use another cache for posts content
This commit is contained in:
parent
6d747d8dfc
commit
ede64026d6
|
@ -40,10 +40,11 @@ class DynastieGenerator:
|
|||
report = ''
|
||||
somethingWrote = False
|
||||
|
||||
def __init__(self, hash_posts=None):
|
||||
def __init__(self, hash_posts=None, hash_posts_content=None):
|
||||
self.report = ''
|
||||
self.somethingWrote = False
|
||||
self.hash_posts = hash_posts
|
||||
self.hash_posts_content = hash_posts_content
|
||||
|
||||
def addReport(self, string, color=''):
|
||||
if color != '':
|
||||
|
|
|
@ -17,8 +17,8 @@ class Index(DynastieGenerator):
|
|||
dirname = ''
|
||||
blog = None
|
||||
|
||||
def __init__(self, hash_posts=None):
|
||||
DynastieGenerator.__init__(self, hash_posts)
|
||||
def __init__(self, hash_posts=None, hash_posts_content=None):
|
||||
DynastieGenerator.__init__(self, hash_posts, hash_posts_content)
|
||||
|
||||
self.hooks = {'posts' : self.createPosts,
|
||||
'title' : self.createTitle,
|
||||
|
@ -127,9 +127,13 @@ class Index(DynastieGenerator):
|
|||
self.addError('File does not exists ' + filename)
|
||||
return None
|
||||
|
||||
f = open(filename, 'rb')
|
||||
post_content = f.read()
|
||||
f.close()
|
||||
if not filename in self.hash_posts_content:
|
||||
f = open(filename, 'rb')
|
||||
post_content = f.read()
|
||||
f.close()
|
||||
self.hash_posts_content[filename] = post_content
|
||||
else:
|
||||
post_content = self.hash_posts_content[filename]
|
||||
|
||||
while True:
|
||||
start = post_content.find('<dyn:code')
|
||||
|
|
|
@ -150,13 +150,14 @@ class Blog(models.Model):
|
|||
self.copytree(self.src_path, self.output_path)
|
||||
generated = []
|
||||
hash_posts = {}
|
||||
hash_posts_content = {}
|
||||
for engine in self.engines:
|
||||
if not inspect.ismodule(engine):
|
||||
continue
|
||||
for name, obj in inspect.getmembers(engine):
|
||||
if inspect.isclass(obj) and obj.__module__.startswith("dynastie.generators"):
|
||||
if obj.__module__ in generated: continue
|
||||
e = obj(hash_posts)
|
||||
e = obj(hash_posts, hash_posts_content)
|
||||
r = e.generate(self, self.src_path, self.output_path)
|
||||
generated.append(obj.__module__)
|
||||
if not r is None:
|
||||
|
|
Loading…
Reference in New Issue
Block a user