1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68---
layout: post
title: "用技术乱炖Jekyll之九:静态数据"
date: 2013-12-22 22:00:00
category: column1
summary: "本篇主要讲解静态数据的应用。"
---
本步骤的代码为:`git checkout -f step_11`。
## 读取与现实数据
在第零篇时,在目录结构时,讲到 `_data` 里存放的是静态数据。
在做我的项目列表时,我用到了这个功能。
我把我的项目信息,写到 `_data` 下的 `projects.yml` 文件中:
{% highlight yaml %}
- name: Weibo-PM
gitcafe: Weibo-PM
summary: "......"
- name: FE-Builder
gitcafe: FE-Builder
summary: "....."
{% endhighlight %}
在 `project.html` 中,用 `site.data.projects` 可以取到这里的数据。
然后通过循环,展示出来。
{% highlight html %}
{ % for project in site.data.projects % }
<li>
<a href="http://gitcafe.com/EdwonLim/{ { project.gitcafe } }">
{ { project.name } }
</a>
<small>http://gitcafe.com/EdwonLim/{ { project.gitcafe } }</small>
<p>{ { project.summary } }</p>
</li>
{ % endfor % }
{% endhighlight %}
效果如下:

真的非常简单,维护起来也是非常容易的。
Bar也可以用这个形式去做。代码可以自己查看。
## 乱炖XML、YAML与JSON
【百度百科】YAML是一种直观的能够被电脑识别的数据序列化格式,并且容易被人类阅读,容易和脚本语言交互。
【百度百科】JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。
YAML和JSON相比于XML都是非常简单和易读的。
XML是最常用的格式,各种数据传输和各式各样的配置都是使用XML的。
但是在互联网中,用的最多是JSON,XML因为标识比较多,相同的数据下数据包比较大,很少被使用,毕竟带宽是要钱的。
而YAML呢,虽然比JSON的数据包还小,但是语法规范较复杂,很少被使用。
各大开放平台,至少在国内,通常使用的是JSON。