引入¶
接上回 >Pelican主程序调用
- 调用内容生成器,生成 pelican内容生成器 p = get_generator_classes() p.generate_context()
- 调用输出模块 >pelican-writer writer = self.get_writer() p.generate_output(writer)
得到一个 generator 列表, 再去生成内容
所以我们来看 Genertator 类
Generator¶
基础类
init¶
关键,调用 <pelican-Readers类,读取内容
self.readers = Readers(self.settings, readers_cache_name)
读取文件系统
simple_loader = FileSystemLoader(os.path.join(theme_path,
"themes", "simple", "templates"))
其他函数暂略,
完成了 Generator的初始化, 我们来看 generate_context(), Generator类中没有该函 数,直接出现成几个子类中, 所以我们要看看几个子类。
一般只用到两个类, 看看它们各自是如何 generator_context的:
选择writer¶
输出¶
generate_output函数也是只在子类中存在
结束¶
重要细节后续补充