魑魅魍魉 发布的文章

大家好,我是一名韩国人,即使前几天还是中国人,当武当祖师张三丰变身之后,我坚信,我和你们都将在 未来的日子里,陆续地变成我们大韩民族的国民。因为八卦是我们韩国的,懂吗,是我们韩国的。所以《左传》《国语》里的占卦卜筮之道都是在运用我们的八卦文 化,包括之后的《周易》,所以你们是没有文化的,只是我们韩国文化的延续,懂吗,是我们的延续。

好了,既然你们说自己是中国人,中国人又都是我们孔家的后代,那么,大家就算一家人了,你们足球赢了 我们只是我们念在兄弟之情留余了面子而已,反正大家都是韩国人。那么,看大家都是第一次做我们韩国人,由衷地为你们感到自豪,在这里,我要给大家简单地讲 述一下我们大韩民族的历史,听好,不许开小差,开始讲了——

大约几百万年前……各种猿猴生活在地球五大洲的板块上,有一个地方的猿猴一夜之间变成了猿人,猿人又 过了一夜后变成了男人和女人,没错,这个地方就是现在八心八箭绝对超值的朝鲜半岛!哈哈厉害吧,在全世界都是禽兽的时候,我们韩国人已经完全超越禽兽了。 但我们大韩民族是个谦逊的民族,我们带着先富带动后富的方针政策忍痛强奸了世界各地的猿猴。在亚洲,我们强奸了金丝猴,才有了黄种人;在欧美州,我们强奸 了白臀叶猴,才有了白种人;在非洲,我们强奸了黑猩猩,才有了黑人;随后我们带着各色子女们走向世界各个角落,人类社会就这样诞生了。说是人类社会,其实 就是我们韩人社会,如果没有我们,可能现在你们都还是悟空呢,哦对,悟空也是韩国人。

后来的事你们应该知道的,我们生下了耶稣、释迦摩尼、孔子、华盛顿、ladygaga、陈冠希、安南、韦迪、宋祖德、郭敬明、兽兽……人太多了,反正有关当今所有宗教、文化、国家、人民的都是我们韩国人爱情的结晶。我们先后发明 了140多种语言和文字,传播给世界各地的韩国子民,其中有个韩国子民运用的韩字(也称为“汉字”)在全球 普及率最高,我代表大韩民族给予热烈地赞扬和支持。

之后,出于对民族内部的信 任而疏于管理,导致第一,第二次世界大战,包括其中的鸦片战争啊,日军侵华啊,八国什么联军啊,其实吧,大家都是韩国人,何必自相残杀呢。我们韩国古代有 个文学家曹植说的好:本是同根生,相煎何太急。看,这就是你们不早点接触咱们韩国文化的下场。因此,不管我们的潜艇是怎么爆炸的,我承认,都是自己人干 的。

说到这里,同学们,肯定是对我们目前为何只占有一个半岛中的半岛这么小块 地方而产生了不解和疑惑。这我就又要代表大韩民族给无知的你们讲清楚了,这是我们韩国要让全世界人民知道我们很低调。因为我们是你们的祖宗,不需要太多的 地方,你有见过80多岁的老爷爷老奶奶还自己去买套新公寓楼住吗,当然要留给子孙你们了。你们是八九点钟的太阳,世界 是属于我们的也是属于你们的,但归根结底还是属于我们韩国人的。 历史就简单的介绍到这里, 相信你们也明白了,要尊敬长辈,小辈们不知道我们的累、我们的苦、我们的痛。纵观人类历史,其实就是韩国国史,我们上了月球、登了火星、造了金字塔、建了 布达拉、拍了阿凡达、涨了房价、开了两会、养了河蟹……很多了,说不清楚。好了,今天就说到这里,记住,我们都是韩国人!

干我们这行,整天亚克西的,自从用了思密达,嘿,还真对得起咱这张脸!

Drupal 7 的核心模块(Core Module)如下:

模块名称 中文名称 作用描述 其它说明
Aggregator 聚合器 聚合动态新闻源内容的更新(RSS feeds、Atom feeds)
Block 区块 用户界面的主要元素,区块是内容在界面上的容器,它被置于某一个界面的某一个区载中,多个区块共同组成了一个页面。
Blog 博客 多用户博客系统
Book 手册 允许用户以大纲的形式创建和组织内容
Color 色彩 允许管理员修改支持本模块功能的主题的色系
Comment 评论 允许用户对已发布的内容进行讨论
Contact 联系 为网站以及网站中的每一个用户提供一个联系表单,可能通过该联系表单联系到本站或者本用户。
Content Translation 翻译管理 允许内容被翻译成各种不同的语言
Contextual Links
Dashboard 控制面板 为管理界面提供一个控制面板,并且将管理工具都组织到这个控制面板中来。
Database logging 系统日志 将系统上发生的事件记录至数据库中
Field UI 字段UI 为Field API提供用户界面
File 文件 定义一个文件类型的字段
Forum 论坛 提供具有讨论功能的讨论
Help 帮助系统 管理帮助文件的在线展示
Image 图片 提供图片操作工具
Locale 本地化 提供界面翻译函数,同时提供界面翻译用户界面
Menu 菜单 允许管理员自定义网站的导航菜单
OpenID 开放ID 允许用户使用OpenID登陆网站
Overlay 遮罩层 在一个遮罩层中显示网站的管理界面
Path 路径 允许用户修改系统节点路径
PHP Filter PHP过滤器 允许用户在内容中插入可执行的PHP代码
Poll 投票 为网站提供投票功能
Profile 让管理员可以定义用户信息属性
RDF RDF
Search 搜索 提供整站的搜索功能
Shortcut 快捷方式 允许用户管理可自定义的快捷方式列表
Statistics 统计 统计网站的访问数据
Syslog 系统日志 将系统中发生的事件记录到日志中
Taxonomy 分类 为网站内容提供分类支持
Testing 测试 提供一个进行实用的单元测试
Toolbar 工具条 在网站顶部添加一个工具条,工具条中展示网站管理的顶级链接以及由其它模块提供的链接
Tracker 跟踪 跟踪用户的最新内容
Trigger 触发器 允许将新的动作附加至系统现有的事件中
Update Manager 更新管理器 检查系统的更新,并且可以安全的安装和更新模块

以上为Drupal系统内置的所有的核心模块列表以及模块的简单介绍,可以通过上表对 Drupal的核心模块有一些简单的了解,在本文档接下来的章节中,将对每一个核心模块进行详细的说明,包括其作用范围、使用方法、开发API等。

Drupal 7 核心模块的详细说明

Drupal 是一个纯模块化的内容管理系统(Content Management System,简称CMS),在Drupal中,除了提供最底层功能支持的系统类库之外,其它任何功能都是以模块的方式来实现的,在Drupal 7中,系统默认提供了36个模块,接下来,本文档将对这36个模块一一进行详细的说明,说明将包括其安装时与其它模块的依赖关系、使用方法、开发API介 绍等。

AGGREGATOR(聚 合器)

现在无数的网站都将它们内容的更新以Feeds的 形式推送给用户,这些Feeds一般都是标准的XML文档,本聚合器模块支持的Feeds类型包括三种,分别是:RSSRDF, 和atom

添 加新的Feed

聚合器提供简单的Feeds分类管理工具,管理员可以在添加Feeds之前,先创建分类,然后将 Feeds进行分类整理。比如与体育相关的所有分类都可以被归整到名为“体育”的Feeds分类下。 当一个Feed 被归属至某一个分类时,这个Feed中的任何更新都会默认被归属于这个分类,但是系统提供工具,可以为每一个Feed中的任何一个记录指定自己独立的分 类。 每一个Feed包括以下这些字段:

  • 标题(Title): 用来描述当前Feed的名称
  • URL:Feed的网 络地址
  • 更新时间晃间隔 (Update Interval):多长的时间间隔更新更新一次Feed内容
  • 模块中展示的更新条目 数(News Items in Block):在区块中展示多少条当前Feed的更新
  • 分类 (Categorize News Items):当前Feed所属的分类

导入OPML

OPML 文件是一个XML格式的纯文本文件,在这个文件中,包含了多个Feed地址信息,我们可以通过上导入OPML文件的方式批量的一次性添加多个Feeds。 导入时,支持两个方式,即从本地上传OPML文件或者向聚合器提供OPML网络地址,前者会要求你在本地已经存在一个OPML文 件复本,后者要求OPML文件可以在网络上访问。

更 新Feed

一个Feed被添加之后,系统并不会立马将其内容更新至系统中,如果我们不进行手动更新(Update Items),那么当前Feed会在下一次系统Core运行时执行一次更新操作。但是我们可以在任何时候手工对Feed进行更新。 Feed更新之后,首先会检查当前Feed的URL地址是否存在一个能被识别的Feed,如果不识别,将返回错误信息,如果识别成 功,将会将其Feed中的内容下载并保存至系统数据库中,下载的记录条数由两方面决定,即系统中设定的最大下载条数,以及Feed本身具有记录条数,系统 会下载这两个数值中最小值所指定的条数。

聚 合器的系统路径

聚合器在系统中的路径为:aggregator 聚合器的管理路径 为:admin/config/services/aggregator 聚合器的详细路径见下表:

页面中文描述 路径 说 明
首页 aggregator
按来源查看页 aggregator/sources
某来源的所有更新 aggregator/sources/ID ID表示来源在系统中的ID
某 来源的分类整理页 aggregator/sources/ID/categorize 同 上
某来源的配置页 aggregator/sources/ID/configure 同 上
按分类查看而 aggregator/categories
某分类的所有更新 aggregator/categories/ID ID 表示分类在系统中的ID
某分类的归类整理页 aggregator/categories/ID/categorize 同 上
某分类的配置页 aggregator/categories/ID/configure 同上·
聚合 器管理页 admin/config/services/aggregator
聚 合器设置页 admin/config/services/aggregator/settings
分 类添加页 admin/config/services/aggregator/add/category
Feed 添加页 admin/config/services/aggregator/add/feed
OPML 导入页 admin/config/services/aggregator/add/opml
分 类编辑页 admin/config/services/aggregator/edit/category/ID ID 表示分类在系统中的ID
Feed编辑页 admin/config/services/aggregator/edit/feed/ID ID 表示Feed在系统中的ID
Feed删除页 admin/config/services/aggregator/remove/ID 同上
Feed 更新页 admin/config/services/aggregator/update/ID 同上
聚合 器权限设置页 admin/people/permissions#module-aggregator

聚合器的权限设置

权 限代码 中文解释 说明
Administer news feeds 管理新闻Feeds
View news feeds 查看新闻Feeds

BLOCK (区块)

在drupal纯Drupal中,任何内容都是通过相应的区块来展示的,比如用户的登陆框使用的是系统提供的User Login区块,主内容是在Main Page Content区块中显示的;在区块系统中,还有另外一个比区块大一级的对象,那就是区块的容器——Region(区域),区域不能通过管理界面创建,必 须在主题文件中创建,一个区域中可以存放多个区块,而同一个区块,默认情况下(即不使用其它模块来改变系统原始设定的情况下),是不允许被同时存放到不同 的区域中的。

管理现有区块

区块的管理主要包括启用/禁用区块、设置其位置、修改区块配置等操作。

启用/禁用区块

要启用某一个区 块,只需要把区块从Disabled(禁用)区块列表中移动到其它任何一个区域即可,区块模块提供了一个方便的可视化操作界面,管理员可以对区块进行拖 拽;要禁用某一个区块,只需要把这个区块从现在所处的区域拖至Disable区块列表中即可。

设置区块位置

区块管理界面所提供的拖拽功能, 可以很方便的实现对区块显示位置的排序,在区块设置界面中,越处于上方的区块将越先显示,在最终生成的HTML代码中,先将处理更前面。

修改区块配置

要修改区块的配置,只需要点击区块列表中,每一个区块后方的Configure(配置)链接即可,对区块的配置主要包括以下几个方面:

  1. 1.设置区块的标题(Block Title):每一个区块都有一个标题,他将会显 示在该区块的内容的最上方,按照系统的规定,当一个区块的标题被设置为空时,则表示该区块没有标题,那么系统在创建该区块的HTML代码时,就不会输入标 题所使用的HTML标签;
  2. 2.设置区块的区域(Region Settings):在这里的设置不同于区块管 理界面首页的设置,在这里,我们可以更加详细的指定区块在不同的主题中所处的位置,任何已启用的主题都会以区块的配置页面列出,并且每一个主题的名称下方 都会是这个主题所有的区域列表,我们为区块指定不同主题下所属的区域。
  3. 3.页面展示设置(Pages):设置区块在哪些页面中显示,默认选择为“All pages except those listed”,即“除以下页面之外的任何页面都显示”,另外一个选择是“Only the listed pages”即“只在以下页面中显示”。指定页面的方式是将该的Drupal路径输入至文本框中,一行一个页面,可以使用通配符来批量匹配一系列页,在系 统中“<front>”表示首页,“*”指代任意字符,如果启用了PHP Filter模块,那么在这里还可以使用PHP脚本来动态的生成页面列表,此功能在这里不再详细描述;
  4. 4.内容类型展示设置(Content Types):设置在哪些内容类型中展示该区块,默认为任何内容类型都展示,但是我们可以指定区块 (Show Block for specific content types)。只需要把要显示当前区块的内容类型前的复选框选中即可。
  5. 5.用户角色展示设置(Roles):设置为哪些角色的用户展示当前区块,默认为为 任何用户展示该区块,与内容类型一样,可以设置只为哪些角色的用户展示区块(Show block for specifix roles);
  6. 6.设置是否允许用户自定义区块的显示与否(Users):可以设置是否将当前区块显示与否的设置权交给用户,默认是不提供用户这种权限,另外两个设置是“Customizable, visible by default”,即“可自定义,默认为用户显示”和“Customizable, hidden by default”,即“可自定义,默认为用户隐藏”。

添加新区块

要 添加新区块,只需要点击Add Block(添加区块)链接即可,添加新区块时,可以为区块指定标题(Block Title)、介绍(Block Description)以及区块主体(Block Body),区块的标题和介绍都是存文本类型的字符串,区块的主体与文章的主体是一样的类型,可以选择不同的过滤器类型,默认使用纯文本过滤器,这种过滤 器会将网址和邮箱地址自动转换成为可点击状态,换行会转换成为HTML中的换行符,分段会转换成为HTMl的段落标签,如果系统启用了其它的过滤器,比如 PHP Filter,那么在区块的主体中,还可以插入PHP或者HTML代码,PHP过滤器可以为区块主体动态提供内容。其它设置与区块的设置一样,即区域设 置,显示设置等。

查看主题的区 域位置

我们可以查看任何一个主题中所定义的区域在网页中的位置,这有助于我们更好的组织网页中区块的安排。

区块模块的系统路径

区块的管理路径为:admin/structure/block

页面中文描述 路 径 说明
区块管理界面首页 admin/structure/block
区 块配置页面 admin/structure/block/manage/BLOCK/configure BLOCK 表示提供区块的模块路径
区块添加页面 admin/structure/block/add
区 域位置查看页面 admin/structure/block/demo/THEME THEME 表示主题的名称

区块的权限设置

权 限代码 中文解释 说明
Administer blocks 管理区块

BLOG (博客)

Drupal核心模块Blog(博客)提供的了多用户博客功能,博客模块启用之后,没有设置 界面,启用之后,有权限的用户就可以创建博客内容,博客模块为系统提供了一种名为“Blog Entry”(博客文章)的内容类型。

博 客模块的系统路径

博客文章的发布路径为:node/add/blog

页 面中文描述 路径 说明
博 客文章发布界面 node/add/blog
博 客首页 blog
用 户博客页面 blog/ID ID 表示用户在系统中的ID

博客的权限设置

权 限代码 中文解释 说明
Create new blog entry content 创建新的博客文章
Edit own blog entry content 编辑自己的博客文章内容
Edit any blog entry content 编辑任何用户的博客文章 权 限很大
Delete own blog entry content 删除自己的博客文章
Delete any blog entry content 删 除任何博客文章 权限很大

BOOK (手册)

Drupal核 心模块Book(手册)提供了用户按大纲创建和组织内容的功能,最终得到的结果,使得被组织的内容形成一个类似于“书”的对象集合。

创建新手册

手册 页面也属于内容页面,可以访问内容添加页面中点击添加新的手册页面(Add New Book Page),来创建一个新的手册页面,由于在Drupal系统中,任何内容都是节点,所以,手册页面也不例外,如果不为某一个手册页面指定大纲,那么它和 其它的页面或者文章看不出来有多大的区别。 默认情况下(可以使用Field API为手册添加更多的属性),在添加手册页面的时候,会且个Book Outline(手册大纲)选项,在这里面我们可以设置这个手册的大纲,如果系统中还没有手册,那么这里会有两个选项,分别为:

  1. <none>:不列入使用大纲,如果选择此项,则当前页面不被列入任何大纲中;
  2. <create a new book>:创建新的手册,如果选择此项,那么会以Ajax的方式创建一份新的手册,同时把当前页作为新创建手册的顶级页面。

除了Outline的手册选择之外,还 可以设置手册页面的Weight(权重),有31个选项,分另是从-15~0~15,数值越小,表示权重越大,也就是在同级的手册页面中,它将处于更前的 位置。 在上面所说的两个选择项目中,Book来创建手册中所有页面的层级关系, 而Weight来管理同一层级中所有页面的顺序,两者结合起来,共同维护了一份手册。

管理现有手册

对 现有手册的管理可以分为两种方法,一种是快捷方式,一种是全局方式(方式名称是本人自己定的,帮助理解而已)。前一种方式就是在访问任何一个可以被添加到 手册大纲中的内容类型的对象时,在其内容页面的Tabs(标签栏)中,都会有一个Outline(大纲)标签,点击这个标签就可以编辑当前内容的大纲。这 种方式方式快捷,对于网站编辑来说,很方便,这种方式很有利于对现有内容进行大纲整理。 另外一种方式就是进入手册管 理页面中,可以更加方便的对某一份手册的现有大纲进行调整,系统提供了拖拽式的操作界面,实现的操作有对现有手册的大纲重构,而且还可以对现有手册中的所 有页面的标题进行批量的重命名。

手册 功能设置

手册的设置主要包括两个,一个是Content types allowed in book outlines,即“允许被列入大纲的内容类型”,这个设置可以设定哪些内容类型的内容可以被列入大纲,在开启手册模块之后,默认只有Book Page(手册页面)这一种类型的内容可以加入大纲,但是我们可以设置任何一种系统中现有的内容类型加入大纲,只需要将这种内容类型前的复选框中选中即 可; 另外一个设置就是Content type for chld pages,即“手册手页面的内容类型”,我们在查看一个手册页面时,在其最下方(不同的主题位置不一样)一般都会有一个Add Child(添加子页面)的链接,即在当前手册页面下创建一个下一级的页面,这个页面默认也是Book Page,但是可以根据自己网站的需要将其设置成为不同的内容类型。

手 册模块的系统路径

手册页面的发布路径为:node/add/book

页 面中文描述 路径 说明
手 册管理页面 admin/content/book
手册设置页面 admin/content/book/settings
某 一手册管理页面 admin/content/book/ID ID 表示用户在系统中的ID

手册模块的权限设置

权 限代码 中文解释 说明
Administer book outlines 管理手册大纲
Create new books 创 建新手册
Add content and child pages to books 为 现有手册添加子页面
View printer-friendly books 查看打印友好版本的手册页面

COLOR (色彩)

Drupal核心模块Color(色彩)模块为用户管理员提供了一种改变当前网站色彩设计的快捷方式,可以让管理员不需要修改一 行系统代码和主题代码,就可以改变整个网站的颜色配置,当然,由于是与网站的界面相关的,所以这个模块的使用也与控制界面显示的主题相关,主题必须支持 Color模块才能使用Color模块,所以,并不是任何时候Color模块都是可用的。

使用色彩模块改变网站的界面颜色配置

我们可以进入显示管理页面中,进入某一个主题设置页面,如果这个主题支持色彩模块,那么在这个主题的设置页面中,一般会有一个叫作 “Color scheme(色彩方案)”的字段设置集,在这个设置集中,我们可以设置主题允许管理员通过色彩模块进行颜色管理的界面元素的颜色。 系统默认提供的Garland主题就支持色彩模块,我们可以进入Garland主题设置页面查看到Color Scheme,可以看到,主题自带了很多Color Set(色彩集),选择不同的色彩集,下方的Preview(预览)框中就会显示使用当前选中的色彩集的效果。 除了 使用提供了色彩集之外,用户还可以自定义自己的色彩集,Garland提供了五个可自定义颜色有元素,分别为Base Color(基本颜色)、Link Color(链接颜色)、Header Top(头部颜色)、Header Bottom(头部底端颜色)、Text Color(普通字符颜色)。要设置哪一个元素的颜色,首先需要点击后面的解锁,解锁之后才能更改当前颜色。

COMMENT (评论)

评论模块提供一种功能,可以让用户对任何已发布的内容进行评论。

设置某一内容类型的评论方式

评 论是针对内容的,所以,在系统中,评论的设置是针对内容类型的,我们可以为每一个不同的内容类型提供不一样的评论设置,对内容类型的评论设置主要包括以下 几点:

  1. 评论展示方式:可以选择是否以Threading的方式展示评论;
  2. Comments per page(每一页显示的评论数):可选项有10、 30、 50、 70、 90、 150、 200、 250、 300;
  3. Default Comment setting for new content(创建新内容时默认的评论设置):这里的所说的默认设置是在发表新的当前内容类型的内容时,当前正要发布的内容对象是否允许评论,这个设置 有三个选择,分别是:Hidden(隐藏)、Closed(关闭)、Open(开启);还有两个复选项,分别为Allow comment title(允许评论标题)和Show reply form on the same page as comments(在同一页面显示评论回复框);
  4. Preview comment(预览评论):评论者在发布评论之前是否需要预览,可选择三种方式:Disabled(禁用预览)、Optional(可选)、 Required(必须)。

这 上面的所有设置都是针对某一个内容类型的,只对当前的内容类型有用。

管 理现有的评论

对现有评论的管理主要分为以下几点:

  1. 审核评论:根据网站的 设置,某些评论可能不会立马发布,而需要等待管理员审核通过之后才能发布,我们可以在评论管理页面对未审核通过的评论进行发布操作;
  2. 删除评论:可以单个删除,也可以批量删除;

评论的权限设置

权 限代码 中文解释 说明
Administer comments and comment settings 管理评论并且设置评论功能
View comments 查 看评论
Post comments with approval 发表评论并且不需要管理员审核
Post comments without approval 发表评论但是其评论必须通过管理员审核之后才会发布
Edit own comments 编 辑自己已发布的评论

CONTACT FORM(联 系表单)

联系表单模块为网站以及网站中的每一个 用户提供一个联系表单,使得其它用户可以在不知道当前网站或者用户的电子邮箱的情况下,通过该联系表单联系到本站或者本用户。如果启用了联系表单之后,网站就会有一个默认的Feedback表单页面,可以通过contact 这个路径访问到,这个表单页面使用的收件人地址就是安装系统时所填写的系统邮件地址;同时,每一个用户也会有一个自己的联系表单页面,可以使用 user/ID/contact(ID表示用户的ID)路径来访问(需要有相关的权限)。

设置站点联络表

Contact Form为系统提供了一个站点联络表,在联系表设置中,我们可以设置多种Category(分类),一个联系表分类有以下属性:

  1. Category(联系表分类的标题):用户区分其它不同的联系表分类;
  2. Recipients(收件邮箱列表):用户发送信件至这个联系表分类时,哪些邮箱地 址将收到信件;
  3. Auto- Reply(自动回复):用户向当前联系表分类发送信件时,自动回复给发信人的信息;
  4. Weight(权重):用来对多个分类进行排序使用的字段,可选项从-10~0~10,数值越小, 越靠前;
  5. Selected(是 否选中):可选项有两个Yes和No,如果选择Yes,那么当前这个分类将为用户默认的收件邮箱列表。

当系统只设置了一个联系表分类时,用户在发送信件时,不需要进行任何选择,但是如果已经设置了超过两个联系表分类,那么用户在发 送信件时,则可以选择是向哪一个分类中发送信件。

CONTENT TRANSLATION(内容翻译)

内容翻译模块可以实现同一个节点 多个不同语言的版本,内容翻译模块可以对同一个节点的各种语言版本进行管理,此模块在启用前要求系统已经启用了Locale(本地化)模块,当启用了内容 翻译模块之后,用户在访问站点时,系统会根据设置向用户提供不同语言的网站版本,如果用户访问某一个节 点,系统首先会检索用户是否设置了自己的本地化言语,如果已经设置,并且用户查看的当前节点有与用户语言相匹配的翻译版本,那么系统会提供这个版本,否则 会向用户提供系统默认语言的版本,或者节点发布的源始版本。 开启了内容翻译模块之后,在内容类型管 理中,每一个内容类型都会多一个设置项Multilingual Support(多语言支持),这个设置项有三个选项,分别如下:

  1. Disable(禁用):不允许当前内容类型有多种语言版本;
  2. Enabled(启用):允许当前内容类型有多种语言版本;
  3. Enabled,with translation(启用,同时):待研究

CONTEXTUAL LINKS

Contextual Links

DASHBOARD(控制面板)

控制面板模块的功能就是为网站添加一个可自定义的控制面板,原Admin(管理)链接名称会被更改为Dashboard(控制 面板),管理页面首页会变为Dashboard,管理页面首页的标签栏会增加一个Dashboard链接,要返回原来的管理页首页,可以点击标签栏中的 By Task(按任务分类)链接即可。控制面板模块提供的是一个可拖拽的自定义界面,控制面板中的每一个基本元素就是区块,所以,系统中的区块我们都可以在 Dashboard中使用。

DATABASE LOGGING

Database Logging

FIELD UI(FIELD用户界面)

Field Ui可以为系统提供一个Field管理的用户界面,使得我们可以不用修改系统代码就可以实现对系统内容结构的重新调整,在这里所说的内容结构包括内容和分 类两者的数据结构。

设 置一个内容类型的数据结构

在开启了Field Ui模块之后,我们可以发现Content Types管理页面中的内容类型列表中,每一个内容类型多出了一个Manage Fields(管理字段)的操作选项,进入这里,我们就可以来管理一个内容类型的字段了。

添加一个新的字段

要添加一个新的字段, 只需要在Manage Fields(字段管理页面)中最下方的表单填写一个新的字段属性,再点击保存即可,填写一个Field,需要填写(或选择)以下属性:

  • Label(标签): 用来描述这个字段的文本;
  • Name(名称):这 是一个只允许使用小写英文字母的字段,系统将会使用它来作为底层数据库的表名称,其前面会自动加上“field_”这一字符串;
  • Field(字段类型):这是一个下拉菜单,用来指定当前添加的字段的类型,在其它模 块没有向Field API提供其它类型的字段时,这里默认提供了十个字段类型,分别如下:
    • Boolean:布尔 类型
    • Decimal:十进 制数
    • Float:浮点数
    • Integer:整数
    • List:列表
    • List(numeric): 公包含数值的列表
    • List(text): 文本列表
    • Long text:长型文本
    • Long text and summary:带摘要的长型文本
    • Text:文本
  • Widget(获取方 式):在未选择Field值时,Widget是不可变的,Widget会根据Field类型的不同而不同,它表示的是当前字段的获取方式,比如 Boolean类型字段的获取方式有两种:Check boxes/radio button和Single on/off Checkbox

添加了新的字段之后,我们可以对这个 字段进行更加详细的设置,比如可以设置这个字段是不是必须字段,如果是列表类型的字段的话,我们还可以设置这个列表是复选列表还是单选列表,其可选值是什 么,哪个值是默认值等等。

设置 字段的展示方式

Field Ui可以让我们很细微的控制每一个字段在不同情况下的各种显示方式,系统默认提供对一个字段进行两种不同状态的控制(可以由其它模块添加状态),这两种状 态分别为Teaser(摘要模式)和Full Content(完整模式),我们可以设置在这两种不同状态下某一个字段的显示方式:

  • Label的设 置:Label可以被设置成为Above(在内容之上)、Inline(与内容同行)和Hidden(隐藏)三种显示方式;
  • Format的设置:Format是表示对字段内容的格式化,不同类型的字段和不同的 格式化方式,比如Long text and summary这种类型的字段可以有五种展示方式,分别如下:
  1. Default:以默 认方式展示
  2. Plain text:纯文本格式展示
  3. Trimmed:被剪 切了的
  4. Summary or trimmed:如果Summary不为空,则使用Summary,否则使用Triimed
  5. Hidden:隐藏

对字段展示的设置除了以上设置之外,还可以对不同的展示需求进行不同的设置,比如对于网页上的显示,我们使用的是Basic这一个展示方式,而对于打印版本,我们又是使用的是Print这个展示,FEED输出使用 的是RSS这个展示版本。

哪些数据可以使用Field UI来修改其内容结构?

可以使用Field Ui来修改其内容结构的数据主要有以下这些:

  1. Node:节点;
  2. Taxonomy:分类
  3. Comment:评论

FILE(文件)

File(文件)模块可以为Field API提供一种新的字段类型——文件,我们可以通过Field Ui来了解这个字段类型的增加,在添加新的字段时,可以选择某一个字段类型为File即可。

文件字段设置

文件字段的设置主要有以几几 点:

  1. 是否允许内容发布者修改文件的展示与否:如果选择Enable Display Field,那么用户在上传了文件之后,可以选择这个文件是否在展示内容的时候也展示出来;
  2. 文件上传目标文件夹:Upload Destination,这是用来设置文件的访问性的,可选择项有两个,分别为:Publich Files(公开目录)和Private Files(私有目录),在字段创建之后,这个属性是无法再进行修改的;
  3. Allowed File Extensions(允许上传的文件类型):可以设置哪些类型的文件才允许被上传至服务器,默认只允许上传“txt”格式的文件,设置时,只需要把文件 后缀(没有小数点)的字符串填写在文本框中即可;
  4. File Directory(文件目录):这里所设置的目录是处于文件上传目标文件夹中的子目录;
  5. Maximum Upload Size(最大文件大小):设置最大允许上传多大的文件,可以使用单位来表示,比如512表示最大允许上传512 bytes的文件,80 Kb表示最大允许上传80 Kb的文件,其它如50Mb等;
  6. Enable Description Field(启用文件介绍):设置是否可以对上传的文件进行介绍。

FORUM(论坛)

论坛模块为系统提供了一个论坛功能。

添 加新论坛

在论坛系统中,有两个需要了解的概念:

  1. Container(容 器):容器可以把其全称说成是Forum Container,即论坛容器,容器中不允许发布话题,只允许存放论坛和其它容器;
  2. Forum(论坛):可以单独创建,也可以被存放至Container(容器)或者另 一个论坛中,论坛中可以发表话题。

为了更好的组织论坛,一般建议先创建一个论坛的容器,然后再在容器中添加论坛,论坛中可以发表新的话题。

修改现有论坛

Drupal 的论坛模块提供了一个拖拽式的论坛管理界面,我们可以通过拖拽来实现论坛的整理,在管理界面中,把一个论坛(或者容器)往前拖动,则会让当前被拖动的论坛 与其父论坛同级,而往某一个论坛(或者容器)下方往右拖动则表示将当前被拖动论坛归纳入后一个论坛下,成为其子论坛。

论坛模块设置

论 坛有三个可设置项,分别如下:

  1. Hot topic threshold(热门话题规则):设置一个话题需要获得多少个回复之后才能成为热门话题;
  2. 2.Topics per page(每页显示的话题数):在论坛中,每一页显示多少个话题;
  3. Default order(默认排序方式):用户查看论坛时,话题列表的默认排序方式,系统默认提供了四种排序方式(可以使用其它模块来控制),排序方式如下:
    1. Date – newest first:按日期查看 – 新发布的话题靠前;
    2. Date – oldest first:按日期查看 – 新发布的话题靠后;
    3. Posts – most active first:按状态查看 – 更新最多的靠前;
    4. Posts – least active first:按状态查看 – 更新最少的靠前。

关于论坛的本质

在drupal中,我们可 以发现启用论坛模块之前,最开始是需要启用Taxonomy模块的,对于刚接触Drupal的用户可以会有一些不明白的地方,论坛和分类之间有什么关系? 其实按照Drupal的思想,任何内容都是节点(Node),那么,从本质上讲,论坛中的话题和博客中的日志或者其它类型的内 容都是节点,在明白这一点之后,我们不难发现,我们可以把论坛和话题之间的关系和结构映射成为分类和文章之间的关系,一个论坛(或者容器)就是一个分类, 一个话题就是一篇文章,论坛中的回复就是文章中的评论,而Drupal本身也就是这么做的,所以,Forum模块会依赖于Taxonomy模块。 我们在创建了几个论坛之后,可以去Taxonomy管理页面查看,会发现,会多出一个Forums词汇表,在这个词汇表下面的 术语以及术语之间的层次结构正好就是你的论坛的层次结构,这些术语就是论坛的本质,只不过系统对这些术语的处理已经被Forum模块进行了改写,让我们从 表面上看不出本身上是分类。

论坛的 权限设置

权 限代码 中文解释 说明
Administer forums 管理论坛

HELP(帮助系统)

管理帮助文件的在线展示。

IMAGE(图 片)

图片模块为Field API提供了一种新的字段类型——图片,同时还提供了一个图片缩略图管理器Images Styles(图片样式);图片模块需要File(文件)模块的支持。

设置图片样式(Image Styles)

Image Styles被我翻译成图片样式,其意思类似于CSS样式中的样式,就是一种表现或者展现形式,Image Styles即图片的不同展示方式,它其实就是一种图片的缓存基制,使用同一张图片可以在各种不同的场合以不同的尺寸显示。 图片模块安装完成之后,系统默认会增加三个图片样式,分别为Thumbnail(缩略图)、Medium(中等大小)、 Large(大图);可以在Image Styles管理页面中查看,如果这三种大小的图片样式已经完全满足系统需要了,那么我们可以不对它们进行任何修改,但是如果还没有完全满足,那么我们就 需要对一些图片样式进行自定义。

图 片样式管理器中对图片操作的定义

在图片样式管理器中,对图片的操作有如下几个定义:

  • Crop(裁切):按 照规定的大小直接对图片进行裁切;
  • Desaturate(褪 色):将图片修改成为黑白灰图片;
  • Resize(修改长 宽大小):将图片在长宽修改为指定的大小;
  • Rotate(旋 转):将图片进行旋转;
  • Scale(缩放): 将图片按照等比例缩放;
  • Scale and crop(缩放后裁切):先将图片等比例缩放至合适大小然后裁切至指定的大小。

在一个Style中,所以上面这些操作可以重复使用,系统会按照操作列表中的顺序对图片进行处理,上一个操作完成之后的结果作 为下一个操作的图片来源,最终所有操作的结果成为这一个Style的结果。

修改系统默认的三个图片样式

系 统默认提供的三个图片样式是与其它用户添加的样式不一样的,它们不允许被删掉,但是可以被用户修改,点击任何一个样式后面的Edit(编辑)链接之后,就 可以进入它们的图片样式的设置页面,如果修改提三个默认样式,那么最开始是没有添加删除操作这些链接或者按钮的,我们必须点击了“Override defaults(重写默认设置)”按钮之后,才会打开图片样式的修改工具,使系统默认的图片样式变得可修改之后,修改方法与用户自己创建的图片样式修改 方式一样,详细可以见“创建新的图片样式”;系统默认的三个样式,可以在被修改之后,再还原至系统的初始状态。

创建新的图片样式

点击图片样式管理页 面中的Add Style(添加新样式)链接就可以创建一个新的图片样式,首先需要输入一个图片样式的名称,名称只允许使用小写字母或者数字、下划线“_”或者连接符 “-”,样式名称将会被用来创建这个样式的缓存图片文件夹,输入了正确的样式名称之后,点击Create New Style(创建新样式)就进入样式设置页面。 我们现在可以在这个样式中添加各种各样的操作,从操作列表中选择任 何一个操作,然后点击Add(添加),就会在操作列表的最下方添加一个新的操作,不同的操作的添加方式可能有些不同,比如Scale或者Resize操作 就需要在添加的时候设置结果图片大小,而Desaturate却不用进行任何设置。每添加一个操作,样式编辑页面上方的Preview(预览)区域都会更 新以这个样式处理之后的结果图片示例。 除了系统默认的三个图片样式,其它任何一个用户创建的样式在默认情况下都是 可以被删除的(除非系统的这种机制被其它模块所修改)。

为某一内容类型添加图片类型的字段

前面已经讲到了,图片模块提供了一个图片样式控制器,同时还为Field API提供了一个图片类型的字段,我们可以类似于文件模块提供的文件类型字段一样,通过Field UI为内容类型添加图片类型的字段。图片字段的添加方式与其它字段尤其是文件类型的字段的添加方式大部分步骤都是一样的,在这里,只说明几点不同。

图片类型字段特有的属性

与文件类型字段相比,图片字段还有以下特有的属性:

  • Maximum image resolution:最大图片尺寸,使用宽 X 高的方式来设置,图片的尺寸不允许大于宽或者高中的任何一者;
  • Minimum image resolution:最小图片尺寸,与最大图片尺寸一样,图片的尺寸不允许小于宽或者高中的任何一者;
  • Enable Alt field/Enable Title Field:在上传图片时是否允许用户设置图片的Alt和Title属性;
  • Preview image style:编辑内容时,图片预览所使用的图片样式;
  • Default image:当用户没有上传图片时,使用的默认图片。

图片的权限设置

权 限代码 中文解释 说明
Administer image styles 管理图片样式

LOCALE(本地化)

本地化模块为系统提供了实现多语方站点的功能,一个系统可以安装多种语言,针对不同的用户群体使用不同的语言,同时,本地化模块 还是内容翻译模块所必须的模块。

设 置系统的语言集

系统默认只安装了English(英语)这一个语言集,但是可以通过Locale模块来增加其它 语言集,语言集的官方下载地址为:drupal.org/project/translations ;

添加新的语言集

要添加新的语言集,可以点击Add Language(添加语言集)链接,打开语言集添加页面,在语言集添加的过程中,我们首先需要指定所有添加的语言集的名称,系统默认提供了很多语言集名 称,中文名称有两个,分别为:Chinese Simplified(简体中文)和Chinese Traditional(繁体中文);如果我们现在下载的语言集文件是简体中文,那么我们需要选择简体中文,然后点击添加。 如果我们的语言集文件不在系统提供的语言集名称列表中,那么我们可以自定义一个新的语言集名称,方法是,不选择任何一个现有语 言,点击Custom language(自定义语言集),打开自定义语言集编辑框,输入相关的信息,点击Add Custom Language(添加新的自定义语言集)按钮即可。 添加自定义语言集名称是,需要设置一些相关的属性,其它必须 设置的有以下几个属性:、

  • Language code(语言代码):这是正在添加的语言集的ID,系统将通过这个ID来识别使用哪一个语言集,一般使用的是“国家代码-区域名称”这种方式,语言代码 所遵守的格式标准可以在www.ietf.org/rfc/rfc4646.txt  查看;
  • Language name in English(用英语描述语言集名称):语言集的英文名称;
  • Native language name(用语言集的本地化语言描述语言集名称):语言集的本地化名称;
  • Direction(文 字方向):在这个语言集中,文字的阅读方向是Left to Right(从左至右)还是Right to left(从右至左)。

在创建语言集是,系统会自动从服务器端 搜索是否存在刚才添加的语言集的语言包文件,如果存在,则会自动导入它(如果语言包是某一个模块的,那么只有在这个模块启用的情况下来会导入这个语言 包)。 添加了语言集之后,就可以设置其为停用、激活或者为默认,如果设置为停用,那么这个语言集仅仅只是被保存进 了系统的语言库中,但是没有任何地方会用到;如果设置为激活,那么系统默认不使用它,可以在某些情况下会使用,比如用户设置了自己想使用的语言集或者 Session决定使用了激活的语言集等等;默认,即网站默认使用的语言集。

Detection and selection

定义系统如何决定使用哪种语言来显示网页元素(主要是Drupal系统、模块所使用的标签和说明性文字),系统默认提供了五种 决定方式,分别如下:

  1. URL:使用URL地址来决定使用哪种语言,这里其实就是查找Language Code的方式来决定使用哪种语言,在网址中可以包含Language Code;
  2. Session:会话,通过一个请求传递的参数或者Session 变量来决定;
  3. User:用户,根据用户自定义的语言集;
  4. Browser:浏览器,根据浏览器中的语言设置来决定应该使用哪种语言;
  5. Default:默 认,使用系统默认的语言,即在设置系统语言集中设置的默认语言。

在设置页面中,可以对以上设置项进行排序,排列在最前面的将作为第一认证方式,在前一个认证方式无法认证时,再使用后一种认证 方式,每一种认证方式又可以选择是否启用,只有在启用的状态下才会能网站的语言集产生作用。

界面翻译工具

除了前面所讲的添加语言集和自 动导入语言集文件内容的方式之后,本地化模块还提供了一个界面翻译工具Translate Interface,使用界面翻译工具,可以实现对系统界面的翻译,可以上传新的翻译语言包文件,查看某一种语言的翻译完成度,导出某一个语言中未翻译的 内容至po或者 pot文件以提供给外部编辑器进行翻译,导入外部工具翻译完成的po文件等等。

翻译可翻译的字符串

本地化工具提供了 一个字符翻译界面,在这个界面中,我们可以查看每一种语言的翻译进度,每一个字符的翻译详情,修改、删除或者添加字符串的翻译,修改或者删除字符串的翻译 十分简单,在这里最主要说一下下如果添加一个字符串的新翻译。 在翻译用户界面中,提供了一个Filter translatable strings(过滤可翻译的字符串),通过这个过滤器我们可以筛选出我们想翻译的字符串,然后点击这个字符串后面的Edit(编辑按钮)就可以对其翻译 进行编辑了,对于未翻译的字符,编辑其翻译字符就相当于添加了翻译。

导入已翻译好的字符集

如果我们使用 了PO文件来保存翻译数据,那么,可以通过翻译用户界面提供的导入工具导入已翻译好的字符集,导入字符集时,可以指定将导入的字符集放到哪一个语言下。

MENU(菜单)

Menu(菜单)模块允许管理员自定义网站的导航菜单,菜单模块默认提供了五个菜单,分别为:

  1. Main Menu(主菜单):一般网站都会有一个主导航,菜单模块提供的这个主导航默认没有任何链接项目,我们可以自定义系统的主导航;主导航在默认主题中使用横 向显示在页面最顶端;
  2. Management(管 理菜单):管理菜单是系统管理员使用得最多的菜单,默认情况下,管理菜单中的所有项就是系统内置的管理菜单项,但是在通过菜单模块,我们可以修改菜单项中 的链接列表;
  3. Navigation(导 航菜单):导航菜单默认是进行功能导航的,比如我们启用了Book模块、Forum模块之后,这些模块的前台界面链接都会默认出现在导航菜单中;
  4. Secondary Menu(次级菜单):与主菜单类似,只是名称上被归为次级菜单;
  5. User Menu(菜单菜单):这是一个提供与用户操作相关链接列表的菜单,默认提供两个链接,用户Profile页面链接页面和退出登陆页面链接。

管理现有菜单中的项

点击任意一个菜单 名称后的Edit(编辑)链接,就可以开始编辑这个菜单中的项,菜单中的项目的编辑主要包括,添加新链接、修改现有链接、对现有链接列表进行重组和排序等 操作,重组和排序的操作类似于手册模块中对手册的重级和排序,拖拽方式实现; 要在某一个菜单中添加新的项,只需要 点击Add Link(添加链接)即可,点击之后,会进入新链接地址信息的输入编辑页面,一个链接至少要求输入Menu Link Title(链接标题)和Path(路径),其中,路径可以是系统路径,也可以是完整的URL地址。之后还可以设置当前链接的父链接以级在同等链接中的排 序权重,点击添加即可保存刚才的链接。

设 置菜单

菜单模块的设置项默认只有两个,分别为Source for the Main links(主导航链接供应源)和Source for the Secondary links(次级导航链接供应源),都是以下拉菜单的形式进行设置。

OPENID

OpenID模块提供系统一种功能,让用户可以将自己在系统中的帐户与多个OpenID帐户关联,使得用户可以同时使用任何一 个已关联的OpenID帐户或者系统中的原帐户登陆系统。

PATH(路 径)

Path(路径)模块可以让我们改变系统默认的路径,比如一个系统路径为“node/2”的节点,我们可以 将其路径修改成为“about”,那么这个时候,我们就已经可以同时使用这两个路径访问节点ID为2的节点了,而且默认使用about。 在启用了路径模块之后,我们在添加任何一个新的页面或者节点时,都可以为其实指定新的路径,如果不指定,则使用系统默认的路径, 我们还可以在一个节点或者页面被添加之后,由路径管理工具独立指定新路径,路径模块提供了一个URL Aliases功能,在使用URL Aliases时,必须保证,源始路径必须是系统中存在的,而新路径是系统中不存在的。

PHP FILTER(PHP代码过滤器)

PHP 代码过滤器,让我们可以在节点、区块内容等文本输入区域输入可执行的PHP脚本,为了安全起见,一般这个过滤器只提供给开发者或者测试时使用,而不允许网 站任何用户都可以使用。

POLL(投 票)

Poll(投票)模块为系统添加了一种新的内容类型——投票。

PROFILES(用户资料)

Profiles(用户资料)模块,让我们可以自定义用户的各种属性。系统默认只提供了很简单的用户信息管理,但是通过用户资料 模块,我们可以添加各种类型的其它信息字段,Profiles模块默认提供了七种不同的字段类型,分别为:

  1. Single-line Textfield:单行字符串
  2. Multi- line Textfield:多行字符串
  3. Checkbox: 复选框
  4. List Selection:单项选择列表
  5. Freeform List:自由列表
  6. URL:网址
  7. Date:日期

自定义用户资料属性

进入 Profiles设置页面,我们可以设置系统的用户资料属性,在Profiles设置页面中,上部分会显示现有的用户属性,而Add new field部分会显示可用的属性类型,点击任何一个类型的字段名称就可以为用户属性添加一个这种类型的字段。 添加 字段时,会要求提供以下信息:

  • Category(分类):即当前所添加的字段所属于的分类,这里的分类与Taxonomy不同, 而仅仅只是对用户信息的分类,比如“个人信息”、“工作信息”、“兴趣爱好”等等;
  • Title(标题): 当前字段的名称;
  • Form name(表单名称):这是一个只允许使用小写字符和下划线的字符串,它是当前这个字段在数据库和系统中的唯一标识,系统默认已经输入了 “profile_”作为表单名称的前缀,一般也不建议用户修改这个前缀;
  • Explanation(解 释):对当前这个字段的解释,用户在填写这个字段的信息时,系统会提示给用户的信息;
  • Visibility(可 访问性):我是一个有四个选项的单选设置项,四个选项分别为:
    1. Hidden profile field, only accessible by administrators, modules and themes. (隐藏的资料字段,只劲旅管理员、其它模块以及系统主题访问);
    2. Private field, content only available to privileged users. (私有字段,信息只允许有特定权限的用户查看);
    3. Public field, content shown on profile page but not used on member list pages. (公有字段,信息将在用户的信息页面显示,但是不在用户列表页面中显示);
    4. Public field, content shown on profile page and on member list pages. (公有字段,内容有用户个人信息页面和用户列表页面中都显示);
  • Page Title(页面标题):Profile模块可以将用户按照各种用户资料属性对用户进行筛选,这里所设置的页面标题就是Profile模块根据某一个字段 对用户进行筛选时,结果页面所使用的页面标题;
  • Weight(权 重):当前字段在同等级的其它字段的排序位置。
  • 其它属性:根据字段的 类型不一样,除了上面这些信息之外,还有其它一些特定类型字段的特有属性。

用户管理自己的信息

在系统中,每一个用户都会有一个自己的个人资料页面,在这个页面中,将会显示所有被设定为可在此页面中显示的用户信息,用户还可 以点击这个页面中的Edit(编辑)链接编辑自己的信息。 如果某一个用户信息字段,在用户创建时或者上一次更新自 己的信息时,还没有被创建,那么用户的这个字段的信息将为空或者为系统的默认属性,用户可以对其进行修改。

RDF

RDF

SEARCH(搜索)

Search(搜索)模块会对系统中所有内容进行检索,提供一个强大站内搜索功能。

搜索设置

搜索模块启用之后,需要进行详细的设 置,进入Search Settings(搜索设置)页面,我们可以看到,搜索模块有以下设置项:

  • Indexes Status(索引状态):这里显示了当前系统中,有多少内容已经被搜索系统检索了,以百分比的形式显示状态,同时还有一个Re-index Site(重新索引站点)的按钮,点击这个按钮之后,搜索系统会重新对整站所有内容进行一些检索,而以前所创建的索引将全部被删除,一般情况下,不需要使 用重新索引这个功能;
  • Indexing Throttle(索引数量):系统每运行一次Cron,检索多少条数据,默认是一百条,如果系统数据量大,而服务器配置又足够好的话,可以把这里调整得 大一些,而对于小型的应用来说,100就足够了;
  • Indexing Settings(索引设置):索引设置应该在搜索模块对系统内容进行索引将就设置好,因为每一次修改索引设置,搜索模块都会重新对系统进行一次索引。
    • Minimum Word Length To Index(索引分词时,每一个词的最小长度);
    • Simple CJK Handling(简单的中日韩字符处理);
  • Active Search Modules(激活模块模块):设置哪些类型的数据可以需要被搜索模块索引;
  • Content Ranking(内容权重):设置搜索引擎根据哪些内容来索引内容和对结果排序。

搜索内容

搜索 系统提供了一个搜索页面,其路径为“search”,搜索工具默认显示了一个文本输入框,和一个搜索按钮,输入关键字之后点击搜索按钮即可搜索内容,并打 开搜索结果页; 搜索页面中,还有一个高级搜索工具,它可以让我们更加详细的自定义搜索过滤器,点击 Advanced Search(高级搜索)即可打开这个过滤器。 搜索系统会在搜索结果中将结果中的关键字进行高 亮显示。

SHORTCUT(快 捷方式)

Shortcut(快捷方式)模块为系统提供了一个创建和管理快捷方式的功能,包括管理员、用户等等任 何被设置为可使用快捷方式功能的用户都可以创建和管理自己的快捷方式,系统管理员可以被系统指定一个全局的快捷方式,即任何一个用户都可以使用的快捷方 式,而用户自己还可以创建和管理多个自己的快捷方式。

创 建新的快捷方式集

在启用了Shortcut(快捷方式)模块之后,进入用户的资料页面,就可以看到,页面的标题 栏中出现了一个Shortcuts(快捷方式)的链接,点击这个链接就可以管理当前用户的快捷方式集了。

管理快捷方式

在快捷方式管理工具中,我们可 以创建新的快捷方式集,修改现有快捷方式集,为某一个快捷方式集添加、删除快捷方式。快捷方式集中的每一个快捷方式,其本质上就是一个文字链接,所以,添 加一个快捷方式,就是往某一个快捷方式集中添加一个文本链接,只需要提供一个链接地址和链接标题即可。 系统默认的 快捷方式集是只允许修改但是不允许被删除的,而其它的任何一个快捷方式集都是可以被删除的。

Science Education Group LLC (SEG) was registered in Chapel Hill, North Carolina, USA, in 2008, with 10 million dollars capital. The major investors are from venture capital of Silicon Valley. Supported by CAST (China Association for Science and Technology) and the Science & Technology Communication Research Center of Beihang University, we are building a global network of top scientists around the world, and dedicated to bridging the gap between scientists and public through a comprehensive media platform and community. The media platform consists of books publishing, internet science portal and online community, as well as science promotional events, to bring the cutting edge science to ordinary Chinese people in an enjoyable fashion.

上面这个就是公司的介绍,看得懂英文的看英文,看不懂英文的,可以去看谷歌语言工具里面翻译一下就OK了,在这个公司做的主要就是公司要运营的一个类似于Research Gate的网站及其后续的维护和更新。

很久没有在博客上面来写自己的生活了,似乎自己已经离生活越来越远了,今年三月十四号,正式从去年九月五号进的公司易维博科离职,算离职吗?似乎也不算,因为我没有真正的认为自己入过职,一切都像是小孩子过家家,或者换种角度讲,像是拉屎,来也匆匆,去也匆匆。

之后今年三月二十二号,进了现在所在的公司,现在的公司叫啥名字,我还是像以前一样,至今未知,或许叫中国企业国际发展协会吧,因为我上班的办公室外面挂着一块这样的牌子,或许叫做民工网吧,因为我的老板每天都是在那里待着,又或许叫清大燕园吧,因为在网上查到,民工网是由清大燕园运营的,又或者,叫做爱大企业培训管理XXOO公司,因为我现在做的系统名字就这么叫的。

我似乎总是这么糊里糊途的走过一程又一程,又想换公司,因为似乎有一家新公司比现在的更好,环境好,似乎气氛也好,似乎工作条件也好,可是爸爸妈妈都说过了,工作不要老换,可是,第一个公司,我一直坚持了整整六个月又十天,最后的结果不是我所想要的;而这个公司我又能坚持多久?

我是二OO九年的三月十四号从黄石一个人来北京的,记得那个时候,八百租了一间只有五平米的房子,待了一个月,最后被房东逼出来,因为有一个人愿意出九百租我那个房子,好,我从中关村搬到了清河,在清河的房子也是八百一个月,不过得压一付三,所以,我一手交了三千六的房租,在那里住了半年,最后因为公司有供房,所以我搬到公司租的房子去了,在永丰屯,虽然远了点儿,不过公司每天都是有车接送的,所以,也就无所谓了,只是,在清河的房租是拿不回来了,因为要提前一个月交房租的原因,我还有一千六在中介那里也是拿不回的。

后来公司出了一些不愉快的事情,上班的地方从清华同方大厦搬完全搬到了永丰屯,唯一相同的事情是,工作还是那样的没有目的,最后过年也是在北京过的,今年一开年,老板说搬到新街口去,我就跟着去,只是不想公司再像去年那样漫无目的的走,所以,所有算作员工的人(一共也就五个人)和老板谈,谈工资的发放方式,谈公司的工作方式,谈公司未来的发展,只是,结果还是和我想象的一样,没有任何进展,所以,所有员工决定一起离开,离开那个让我们所有人看不到希望的地方。

而今,在新公司里面,待遇还算不错吧,只是不太适应压半个月发工资的方式,或许大家都是这样的吧,或许我真的太年轻,不懂规矩吧,反正,我总是第一个打破公司规矩的那个人,这一次也一样,先是和主管(暂且这么说吧,因为他一直都是管着我的)闹,不按他说的办法来做,而后和总监闹,也是不喜欢他的做开发的方法,如果还一直留在公司的话,可能下一个就是和老板去闹了吧,说到闹,也不算是吧,只是和他们大声的说事情而已。

有一家新公司,如果现在能过去的话,我能在里面做让近似技术总监的职位,而且我还是那样认为我可以把那个工作做好,可是我怕我没有那个心思了,因为我已经不是人生第一次的感受到生活的压力了,爱情?爱情总是让人很累,哪怕爱情带给我甜蜜,我现在才明白两个人是朋友,可以亲密无间,而成为恋人之后,就矛盾重重,因为做为朋友,可以无话不谈,而且总是谈着共同爱好的事情,而相爱之后,两个人所说的所谈的总是对方最不愿意去谈的事情。

我也想早早的结婚,走过谈恋爱这一过程,可是我不能不负责任的就这么把一个人带进自己家,因为我现在还没有能力去支撑一个家,能力,不仅仅只是钱,还有我这未定的心,不是爱不定,而是心还在外面飘着,我不想这样在心里还有其它事情的时候,就把她和自己丢给婚姻。

或许我就是人常说的败家子吧,从小到大,已经花了爸爸妈妈那么多,而这一次,再一次的把手伸向了爸爸妈妈,我似乎永远是一个长不大的孩子,总是把自己的后路丢给爸爸妈妈,说到再实际点,我似乎总是在想着,爸爸妈妈给办的那些银行卡里,总会在自己最需要的时候有一些钱的,所以,我不要去担心那么多。

或许你总是想我一事无成,或许你说我交着一大帮狐朋狗友,或许你说我跟什么样的人在一起就会走什么样的路,或许,我真的是一直在走着一条错误的路,但是为什么我过着二十多年,没有别人再来这么说我?我没有不相信任何人,但是我也从来没有相信自己就是这样的人。

似乎在别人看来,我总是最不懂得痛苦的人,或许是,或许不是,但是这一年以来,我唯一明白的是,不管我多么的努力,我还是那样的失败,当我再回头去看看时,似乎所有的人都已经离我远去,而所有的人都给我留下一大堆所谓的痛苦。

有时候在想,为什么要被生下来,有时候又在想,为什么还要这样的活下去,或许,生下来之后,就得努力的活下去吧,所以,我从来不会像别人那样想到死,在所有人都痛苦的时候,我还能一如往常的一样让自己开开心心的过,但是,有谁知道我的内心?我想把所有的不愉快都深深地隐藏在心底,一个人不开心就罢了,何必再去影响其他人?所以,我去年甚至选择一两个月不和任何人联系,我手机关机,QQ不上线,EMAIL邮件不回,甚至连我爸爸妈妈都很难找得到我,而现在,那是我这么多年以来,唯一一次感觉到清静,因为没有任何人为的烦恼,或许那真的是我所想要的吧?只是真的那样之后,心里又总是有太多的放不下,包括朋友、恋人、父母还有自己耐不住的寂莫。

听说,其实人做事,是没有对与不对的,只有观点和想法的不同,只有认知的不同,只有人生价值观的不同,所以,或许我从来就没有做错过,而是对于某些人的价值观来说我是错的,而对于某些人来说,我是无所谓的,而对于另一些和我一样的人来说,我是应该这样的,所以,我从一开始就选择了跟和自己一样的人走在一起,影响着他们并被他们影响着,从小到大。

不知道近墨者黑进朱者赤,到底最后是黑者近朱而赤还是朱者近墨而黑,总知这似乎就像人们常说的到底是先有鸡还是先有蛋,虽然,我知道是先有蛋的,但是至于朱与墨,我无法知道。

从某种角度来讲,人生的最大遗憾莫过于错误地坚持了不该坚持的,轻易地放弃了不该放弃的…… 那我到底错误的坚持着什么了吗?轻易的放弃了什么了吗?

来北京一年又一个月O三天,我在北京没有对任何一个女人动过心,甚至没有和哪个女的说过一句超出同事与朋友之间关系的话,而且自己心里也一直都是这么认真的认为,我确实是没有这个想法,难道真的是我改过自新了?真的不再像别人说的那样花心了?虽然我从一开始都认为一个人可以真爱几个人,但是真的让我真爱的,有几个?或许只是以前太过年少无知吧,或许只是自己确实太过于早熟了,反正,我确实是有过太多次所谓的爱情了。

我能一个人在这个所谓的花花世界保持着自己一个人,或许并不是因为什么别的,而是因为我似乎已经厌倦两个人在一起的争吵,真的,我这一生最大的错误可能就是希望任何事情都简简单单的,所以,就算是人类最复杂的爱情这件事情上,我也希望这样,我真的不想再吵哪怕是一个字了。

所以,我能在北京大老爷们儿的一个人过,心里确实是哪怕一次想过要找一个女人陪自己在北京过,而现在坚持的,或许就是前面所说的不想轻易放弃一直所拥有的吧,但是我现在却不知道,到底我是在错误的坚持,还是不轻易的放弃,而我现在内心深处已经对两个人的生活有了一种恐惧,因为这四年来,我似乎没有在两个人的爱情问题上做对过一件事情。所以,我一直都希望我是一个人在北京,而不是与相爱的人在一起打拼两个人的未来,我似乎宁可等自己有成就了再去娶她回家,或者没有成就的时候,让另一个有能力给予她幸福生活的人去陪她一辈子。

是的,所有这些话我从来不想说,虽然我曾经说过几次,也曾经做过几次,可是这些最内心的话,总不是你想听到的,所以,我只能一直都放在心里,其实对某个人说这样的话,并不代表我不爱她,或许是因为我爱的方式确实不一样吧。

现在每天上班,都会路过北京的第十二中(如果没有看错的话,是这个中学),经常会有初中学生站坐在我的旁边,总是听到十几岁的小女生小男生在说“某某某与某某某有奸情”,我只是无意的笑笑,想想当年自己也是从那样的时代里走过,或许,相对于一个不大不发达甚至都还不能属于发展中的小县城来说,我似乎太过于另类,所谓的一见的钟情,所谓的早熟,我在小学六年级刚毕业就已经开始了。虽然和九O后没法比,但是比绝大多数甚至所有八O后都早吧。

虽然太过于早熟,但是似乎我从来没有任何的女人所想要的浪漫,或者说贴心吧,我似乎是一个个人主义者,当有自己的事情的时候,任何人都不没有办法让我离开,我又似乎是那种真心爱一个人,但是却不想苦于两个人的复杂生活的那种人,因为我内心一直想过的是一种没有任何争吵没有任何矛盾的简简单单的生活,而这种生活,又似乎永远都不可能有。

反正不管怎么说,我现在是一个不想再让情感左右人生的人,因为在我用尽所有心力之后,发现自己所给予的并不是别人想要的的时候,我就已经没有任何再可以给予的了,因为我已经把所有心都用完了,或许这样说,会伤人心吧,只是我现在确确实实就已经成为这样的一个人了。

那我现在到底是怎么样的一个人了,可以这么说吧,老板少给我发了一分钱工资,我可以立马提着包走人;自己不想做的某件事情,哪怕这件事情对自己很有利,我是死也不会做的;我不想说的,我是永远不会说的;我想说的,你是堵也堵不住的……那我今天想说这些了,那我应该怎么办,或许我真的就说了吧,但是自己再返回去看看,似乎把自己最想告诉你告诉大家的,一句也没有说。

我一直都没有勇气去把自己最内心的那些话说出来,哪怕是再要好的朋友,我都不曾提起过一句,今天也是一样……因为我怕伤害人,可是最后却发现,人还是伤着了,那我到底应该选择去走哪一条路?

我现在已经被工作和收入,说白了就是被钱缠着了,所以,一切的一切都想以能不能拿到更多的钱为目的,或许你总是认为不管我能有怎么样的收入,最后都是一无所有吧,那我到底应该怎么样?我总不能因为这样,而不是努力了吧?我选择留在北京不是因为我想留在北京,只是我感觉我似乎只能在北京,除了北京,我还能去哪里呢?

我已经被生下来了,现在除了努力的活下去,我还有别的选择吗?

最近这几天在做的东西就是电子系统中的考试系统,按照上头的说法,能完美模仿现实生活中的考试,我晕,把考试搬上互联网,无非就是为了获得更回方便的考试体验,比如没有了考场上人数的限制,没有了时间地点的限制,也可以更好的解决抄的问题,可是上头说了,考场要设置人数,时间,每一次考试,必须要让参考的人员在统一的时间段里登陆考场,然后开始考试,如果过了时间就不让再考……

不说了,下面这个是刚才正在写的函数,用来自动组卷的,就是自动从题库里面随机选取一定数量的题目,生成一份试卷,没写完,可能今天是没有心思去写完它了,一会儿去Ocean那里。

创建下面这个是把现实生活中的纸制试卷照搬到互联网上来的,可能不太像吧,因为还是改动了一些地方:

到现在,差不多在新公司里面工作已经有二十二天左右了,说到感觉吧,真的很一般,而且,现在所做的唯一的工作就是把公司的一个电子学习系统开发完,安排的是两个人开发,一个人做界页设置,但基本上到现在为止一直都是只有我一个人在写,不知道另外的那一个管着我和我做设计的朋友的人是不是专门就负责管或者他需要处理更加“重要”的事情,反正,到现在为止,所有代码都是我一个人写的。

不知道是天生的反动还是怎么滴,对现在管我的这个人很不爽,其实说实话吧,这个系统也不是很大,如果全丢给我一个人,不出一个月也能完工,最开始我也是计划着快点儿做完,然后再做其它的事情,但是后来吧,从老板的态度和这么多天对公司的了解上来看,其实我完全没有必要那么认真。

首先,现在老板要的不是一个可以给他工作的人,而是一个系统,所以,老板重视的并不是员工,而是把系统做完了再说,老板给的时间是三个月,那我也就没有必要一个月就整完了;再者,我也不可能按着现在那个所谓的“北大青鸟”的牛人的安排来做事情还能有原来那样的速度。

说拿现在做的事情来说吧,最开始让我把用户管理给做了,我做了,接着让我做登陆,我做了,之后很不爽,做什么都需要登陆,之后再让我做题库管理,我做了,这几天把自动组卷给做完了,这样一块一块儿的做,让人很想不明白,其实好多东西提前或者把整个系统大体的都一起和我说明白,很多时候可以省下很多事情的。

后台必须使用框架,我当时问为什么,他给的理由是框架好控制,我说我不会框架,要写你自己来写吧,我没那个时间,最后的结果就是他和他的上级打我和我朋友的小报告,还是躲在厕所里面去打的电话,最后还被我们给知道了;唉,又是一正宗的北京人……

来现在的这个新公司已经有一个星期的时间了,从最初的面试,到二试,到三试,一共花了一周的时间,再到第四试(我说是四试吧,就是让和胡潇两个先做一周看看老婆满意不满意)又花了一周的时间,我和胡潇两个人算是连过了四关了,从今天开始(2010年3月29日,星期一),就算正式开始为期三个月的试用期啦。

我和胡潇做的事情还是一样的,胡潇负责程序的界面我负责程序的代码,还是两个人的配合,希望以有做好吧,另外还有一个人带着我们一起做……

今天从早上一直忙到5点多,就要吃饭了,今天准备加班,为了能把现在的这一份工作做好,得用心啊,用力啊,还有时间啊,嘿嘿,不过现在就我和胡潇两个人在公司办公室这边(现在对公司的制度哪什么都还不明白,不知道和五道口那边是怎么样的一个联系,不过现在也很好),所以,可以算是没有老板的时间吧,所以,自己也当当老板看看像不像。

上面那个不是我自己哈,姓胡名潇,一个搞国画和书法出生的被我拉来北京干设计,底子还是十足的,下面这个是俺自己了,刚理的头发。

今天一天的工作,主要解决了三个问题:

  1. 文件上传的PHP类已经完成
  2. 连接并进行简单MySQL数据库操作的PHP类已经完成
  3. 为图片创建缩略图的PHP类已经完成

明天需要正式解决的问题是:

  1. 将ODT格式文件转为xHTML+图片
  2. 将Microsoft Office 文件转换为网页可直接阅读的文件(在Windows 系统下实现,这个有些儿难度,现在想到的办法是:在Windows 服务器上安装OpenOffice,然后编写一个宏,使用PHP去调用这个宏,就可以直接通过OpenOffice把文档转换成为xHTML或者PDF)

昨天(2010年3月22日)是从以前的公司走了之后在新公司的第一天上班,说实话,我现在还不知道公司名称到底是怎么写的,面试的时候看到的是“民工网”,不过似乎民工网只是公司 运营的一个网站,怎么说呢,感觉现在的这个公司“正规”了许多,说的正规是制度哪什么的。

昨天第一天上班,去的时候是公司的一个人接的我们,然后差不多下午两点多的时候,她走了,就只有我和胡潇两个人在公司里面,以后的日子里(还不知道有多长的一段时间呢),可能就只有我和胡潇两个人在那个办公室里面工作吧,地址是商务部研究院,不知道具体是多大的一个机构吧,不过按理来说,这里至少是国家直属部门的一个分部,去年朋友问我在哪里上班,我可以说是在清华同方,现在谁问我在哪里上班,我肯定是得说在商务部了,哈哈。

其实我能不能在现在这个公司里面待下去,还不知道,因为三次面试,最后谈工资的时候,说的是先试用三个月,在三个月之前,要先工作一周,如果这一周(也就是现在这一周)的工作公司满意,那么就试用三个月,如果不满意,那我就只能在那里待最多六天啦。

其实工作说难吧,也不是很难,就是开发一个eLearning系统,以前在搞Java的时候,用Java做过一些,不过那个时候没有完成,现在再来做的话,至少在业务逻辑上面,思路还是很清楚的,只是有两个问题,这也是在面试的时候就重点提出来过的,一个问题就是:在这个学习系统中,有很多以光碟的形式存储的教程,在这个系统里面,需要以最方便的方式把他在网页中播放出来;第二个问题就是,用户上传任何类型的富文本文件,比如Microsoft Office、OpenOffice、RTF、PDF等格式的文件,用户上传上去,系统都可以让他们在网页上很好的显示出来,这两个问题,如果说简单的处理办法吧,我用的就是把光碟都转成流媒体格式,在网页上播放,然后第二个问题,解决办法在Linux等类Unix系统里面都已经解决了,可是公司要求只能使用PHP做为编程语言,同时服务器却只能使用Windows 2000或者Windows 2003,服务器端软件使用Apache或者IIS,这个问题就不太明白了,为什么一定要这样的搭配呢?不明白。

如果说从用户的角度来说吧,在Linux下面的话,不会给用户带去多少不利的,因为在个人感觉在Linux里面把所有的内容(eLearning系统、文件转换、服务器等等)都封装到一起不会比在Windows下面难吧,个人感觉啊,毕竟对Windows服务器我可以说是一点儿也不会,具体结解办法吧,在Linux下面能解决,在Windows的解决办法也已经想出来了,今天上班就好好的去试试吧,理论上,是可以解决的,而且不是很复杂。

另外,一直想把Parallels Desktop 5给买下来,可是不知道为什么,信用卡在官方上面一直付不了款,想不明白为什么啊,所以就只能一直试用了,有的是4,一次可以使用14天,然后换个电子邮箱地址重新注册,获取一个新的试用注册码,就又可以再试用十四天,这样下去,其实也不错,毕竟电子邮箱地址是无限的嘛,所以这个软件也是可以无限试用的,试用与正式版也没有发现有多大的不一样。

我没有啥浪漫不浪漫的,我是个很平常的人,恋爱对我来说,确确实实是可有可无,可是既然有了,我就不想把爱情看作是可有可无,虽然爱可以让人做很多决定,但是爱不是做决定的唯一指标,爱情只是我这一生的一部分,就像我的事业一样,就像我的童年一样,永远占不了全部。

我总是把所有的事情都拖得很长很长,本来很早就可以解决的问题却总是一直没有解决,我不知道这是我的错还是本没有错,反正就是让事情总是变得越来越糟糕。我是个什么样的人,没有人能明白,连我自己都不会明白。

因为我从来不骂人,所以我也不喜欢别人骂人,从来没打架,所以也不喜欢别人打驾,这就是一个很简单的个人性格,没有必要把这样的很平常的性格推到其它方向上去。

我很恨,可是却总是恨不下心。我也有我自己想要的生活,也有自己所期盼的未来,可是所有的一切都似乎必须要照着不是自己的想法走下去。虽然我说我自己没有把爱情当作自己的全部,可是却总是被爱情左右我的所有,人就是这样吧,我也是人,也是这样的。

所以,我不希望这里说的任何话伤害谁 ,这只是我自己发发牢骚,快一个月没有来这里写些什么了,就当是把三月份的文章补这么一篇吧,一篇不太开心的牢骚。所有的人都是说我总是把自已答应的事情没有做好,可是那为什么每一次总是要逼着我去答应呢?明明知道我做不到,却非要我去做。

我似乎应该成为一个听命于谁的人,可是我天生就不是干这块的料,让我听谁的都不太可能,哪怕是听自己的都有很多时候不太可能,那为什么就非逼着我去听呢?

我想说啥我不知道,就是乱说,很烦,干嘛好好的日子不好好地过,非要找这找那样的不开心?本来过日子就已经很难,可是为什么非要让自己难上加难?难到我不希望早点儿把事情做好?难道我又不希望早点儿能和自己所爱的人在一起去,可是我能吗?要车没车,要钱没钱,要房没房,而我说了句很实际的话,却说我这说我那,那我就直接当一个听从使唤的狗不就行了吗?

我不是神,我是人,是人就都会有极限的,而我的极限,就是在高了极限的时候再多忍一点点就过去了,可是这样的日子能长久吗?

本文档将帮助你安装完成Diango。

安装Python

Django 是一个 Python 的开发框架,所以,在安装Diango之前,你必须已经安装了Python。

Diango 可以运行在任何 2.4 至 2.6 之间的 Python 版本上(因为 Python 3.0 还没有发布正式稳定版 ,所以Diango还没有发布基于Python 3.0 的版本),你可以从www.python.org下载Python的最新稳定版,如果你使用的是Mac OS X 或者Linux等操作系统,那么Python已经默认安装了。

安装Apache 和 mod_wsgi

如果你仅仅只是想体验一把 Diango,那么完全可以跳过本章节,国灰Diango已经内置了一个轻量级服务器供你测试使用,所以,在你准备真正把Diango投入到你的产品之前,没有必要安装Apache。

如果你想在你的产品中使用Diango,你需要使用启用了 mod_wsgi模块的Apache服务器,mod_wsgi与mod_perl十分想像,它可以将Python与Apache整合,当服务启动时,同时将Python代码加载到内存中,代码会随着一个Apache进程的创建而创建,并一直保存到这个进程的结束,请确宝你已经安装了Apache服务器,并激活了mod_wsgi模块支持。

你可以查看How to use Django with mod_wsgi这篇文章了解如何配置mod_wsgi。

如果因为某种原因你无法使用mod_wsgi,Django同时也提供了很多其它选择,最好的第二选择就是mod_wsgi的前身mod_python,另外,Diango遵循WSGI标准,他允许Django运行在各种不同的服务器环境下,在server-arrangements wiki page了解如何将Django安装到其它的服务器上。

准备好数据库

如果你想使用Django实用的数据库API,那么你必须确保你已经安装并运行了一个数据库服务器,Django支持很多类型的数据库,官方对PostgreSQL、MySQL、Oracle以及SQLite(SQLite不需要运行另一个数据库服务器)提供支持。

除了使用官方支持的数据库服务器,你还可以使用下面这些第三方提供的数据库支持:

  • Sybase SQL Anywhere
  • IBM DB2
  • Microsoft SQL Server 2005
  • ODBC

Django以及ORM功能在第三方支持的数据库上的运行都是非常有限的,每一个针对官方支持的数据库的查询在使用第三方支持的数据库的时候都必须转换成为第三方支持的查询。

在使用数据库服务之前,你还需要确保你已经安装了相应的Python数据库包。

  • 如果你使用PostgreSQL,你需要psycopg包,Django同时支持psycopg 1和psycopg 2,在你配置Django的数据库层时,请区分好你将使用的是postgresql(使用 psycopg 1)还是 postgresql_psycopg2(使用psycopg2)。
  • 如果你使用MySQL,你将需要MySQLdb,支持1.2.1p2及其以上版本,你同样需要阅读专门的MySQL文档。
  • 如果你使用SQLite和Python2.4,那么你需要有pysqlite,使用2.0.3及其以上版本,如果你使用Python 2.5,那么SQLite已经成为其标准库,所以你不需要重新安装其它的支持,你还需要阅读使用SQLite的注意事项。
  • 如果你使用Oracle,你将需要一份ox_Oracle复本,但是请认真阅读Oracle相关的注意事项以及重要说明,尤其是关于Oracle和ox_Oracle版本的信息。
  • 如果你使用的是第三方提供的数据库支持,那么请阅读第三方提供的说明性文档了解如何安装配置它们。

如果你想使用Django的 manage.py syncdb命令来自动在数据库中创建你的模型,那么需要确定Django有创建和修改数据库的权限,如果你是手工的方式创建数据库,那么只需要给予Django SELECTINSERTUPDATEDELETE权限就可以了。

如果你使用Django的测试框架来测试数据库查询,那么Django需要有创建一个测试数据库的权限。

移除任何旧版本的Django

如果你是从旧版本的Django升级到新的版本,那么你需要在安装新版本之前先移除旧版本的Django。

如果你是使用 setup.py install安装的Django,那么只需要从Python的 sites-packages目录中移除django目录即可。

如果你是从一个Python egg中安装,那么需要先移除 Django .egg文件,然后再移除easy-install.pth文件中对这个 egg文件的引用,这个文件也被存放在 site-packages目录中。

怎么找到 site-packages 目录的位置?

在不同的操作系统中,site-packages 目录的位置都是不一样的,并且与Python的版本也是相关的,要找到你的系统中 site-packages 目录的位置,只需要运行下面的命令即可:

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"

注意,上面这段命令应该在Shell中运行,而不是Python窗口中。

安装Django 代码

你可以下载最新发布的特别版本Django或者获取最新的开发版本,不同的发布版的安装过程有些许的不一样。

不管你使用的是哪一个版本,安装都是十分简单的。

安装最新发布的特别版

查看你所下载的最新稳定版Django的distribution specific notes,找到是否已经提供了自动安装工具,稳定发布版一般都支持自动安装和升级。

安装官方正式发布版

  1. Django下载页面下载最新发布版;
  2. 解开下载得到的压缩包(示例:tar xzvf Django-NNN.tar.gz,其中的NNN就是你所下载的Django的版本号),如果你使用的是Windows系统,你可以使用命令行工具bsdtar工具或者GUI软件7-zip来解压该文件。
  3. 进入第二步中解压得到的目录(示例:cd Django-NNN);
  4. 如果你使用Linux、Max OS X或者其它类Unix系统,则可以在Shell中运行sudo python setup.py install来安装Django,如果你使用的是Windows系统,打开命令行对话框,以管理员身份运行setup.py intall命令。

以上命令会将Django安装到Python中的site-packages目录。

安装开发中的版本

跟踪Django的开发

如果你想随时都使用Django的最新版本,那么你需要随时注意the development timeline,同时你还需要随时注意the list of backwards-incompatible changes,这会让你随时了解最新版本Django的新功能,以及你是否应该升级到新版本(正式发布版中,对以前版本的任何修改都会以文档的形式发布)。

如果你想随时将你的Django代码更新到新的开发版本中,了解最新的Bugi修复列表,那么你可以根据以下步骤进行:

  1. 确定你的电脑已经安装了Subversion程序,并且你可以在Shell中以命令行的形式运行它(输入svn help测试你的机器是否支持svn)
  2. 以如下方式检查Django的最新开发版本(trunk):
    svn co code.djangoproject.com/svn/django/trunk/ django-trunk 
  3. 下一步,你需要确定Python解释器能加载Django代码,有很多办法可以实现这件事情,最常使用的方法就是,经Linux、ac OS X或者其它类Unix系统中,使用以下Shell命令:
    ln -s pwd/django-trunk/django SITE-PACKAGES-DIR/django

    在上面的代码中,你请将 SITE-PACKAGES-DIR"改成你自己的 site-packages路径。另一种选择是,你可以定义PYTHONPATH环境变量来包含django-trunk目录,这种办法在Windows系统中是最好的解决办法,因为在Windows系统中不支持Symbolic links

    关于Apache 和 mod_python


    如果你使用设置PYTHONPATH环境变量的方式,那么别忘记你还需要在Apache的配置文件做同样的事情,在Apache配置文件中设置PythonPath属性。更多信息,请查看怎么通过mod_python使用Django这篇文章。
  4. 在类Unix系统中,在你的系统路径下(如:/usr/local/bin)创建一个指向django-trunk/django/bin/django-admin.py文件的Symbolic Link,比如:
    ln -s pwd/django-trunk/django/bin/django-admin.py /usr/local/bin

    这会让你可以在任何路径下使用django-admin.py文件,而不必再输入这个文件的完整路径。在Windows系统中,你也可以将django-trunk/django/bin/django-admin.py复制到某个系统路径中,比如C:Python24Scripts

你没有必要去运行python setup.py因为你已经把该命令将做的事情在第三和第四步中都完成了。

如果你想更新你的Django的代码,只需要在django-trunk目录中运行svn update命令即可,Subversion将自动下载任何有过修改的文件。

Drupal 6升级到Drupal 7之后,区块(Block)有了更多新的、定义化的CSS ID,许多旧的区块ID现在都进行了大的改善,使其对设计和开发者更加友好了。

区块(BLOCK) 旧的CSS ID (DRUPAL 6) 新的CSS ID (DRUPAL 7)
最新博客日志/Recent Blog Post block-blog-0 block-blog-recent
手册导航/Book Navigation block-book-0 block-book-navigation
最新评论/Recent Comments block-comment-0 block-comment-recent
最新活跃论坛话题/Active forum topics block-forum-0 block-forum-active
最新论坛话题/New forum topics block-forum-1 block-forum-new
语言选择器/Language switcher block-locale-0 block-locale-language-switcher
Syndicate block-node-0 block-node-syndicate
最新投票/Most Recent Poll block-poll-0 block-poll-recent
作者信息/Author Information block-profile-0 block-profile-author-information
搜索框/Search form block-search-0 block-search-form
最受欢迎的内容/Popular content block-statistics-0 block-statistics-popular
Powered by Drupal block-system-0 block-system-powered-by
用户登陆/User login block-user-0 block-user-login
导航/Navigation block-user-1 block-system-navigation
最新成员/Who’s new block-user-2 block-user-new
在线成员/Who’s online block-user-3 block-user-online

示例:

在Drupal 6中,可能会有如下CSS样式:

#block-user-0 { font-size: 1.5em; }

那么,在Drupal 7中,就将是:

#block-user-login { font-size: 1.5em; }

今天终于等到Drupal 7的最新消息了,两年的时间对Drupal 进行了一次大的改革,CCK、ImageField等模块进入核心,用户界面也有了很大的提升,同时提供一个给终端用户和一个给开发者使用的安装配置,现在是对用户和开发者都友好了,不过 Drupal 7正式版什么时候出来,应该还需要一两个月吧,因为毕竟还有那么一大堆的Bug需要去修正,Drupal 官方给出的答案是等Bug列表里面的记录为0的时候,就正式发布,我去看了一下下,还有那么不多不少的几页呢。

Drupal 7 里面把重量级的CCK及其子扩展模块Imagefield、FileField等都加入了核心去了,其用户体验也有不小的提升,看来这两年的时间确实是做了不少事情啊,看看Drupal 创建人的网站,Drupal 8的计划都已经出来得差不多了,等Drupal 7正式发布,Drupal 8的开发团队立马就会组建,也就是说,只要Drupal 7一正式发布,Drupal 8就会立马开始开发。

心动的事情啊,哈哈,不过现在我最担心的就是,我在国内能不能把Drupal 以及Wordpress或者其它的CMS的二次开发做好,现在这个大环境其实对我们来说是很有利的,虽然现在我总是在高唱着“我多想回到家乡,再回到她滴身旁”,但是,毕竟,我的博客也好,网站也好,域名也好,都是在国外放着呢,现在有一种有家不能回的感觉,还有一种被家抛弃的感觉,这想有这种感觉的不止我一个人吧?

又无题来了,不知道我这是不是没事儿找事儿,本来应该去找一家什么都稳定一些的公司好好的做我的程序员吧,可是现在,来到的这个公司过得很苦,我不是说我自己很苦,而是公司很苦,最近发生的很多事情,现在也把公司发展的重担自己往自己身上压了,放了一年十六万的工资我不要,非得留在这里。

可能这叫体验生活吧,不对,应该是把自己看得太重要了吧,认为自己有能力把一切做好,虽然我总是没做好。自认为是这样的,很久没有来关心这里的事情了。说感情吧,感情很乱,说事业吧,事业已经定下来了,我是说我把自己的事业目标已经定下来了,没说假话,只要现在这公司还在,公司愿意再努力下去,我也不会离开公司,哪怕是吃馒头啃咸菜,日子照样儿过。

只是唯一一点儿不爽的是,我看似很重要,可是很多事情却心有余而力不足,不是认为自己做不好,而是因为其它的事情让我没法儿做,这是很让人郁闷的一件事情,咋郁闷了?没法儿说,反正这两天我把很多时间丢给了《战地二》,今天突然感觉不应该再这样下去了,所以突然又兴致勃勃地跑来这里发一顿牢骚来着了。

突然又想起了一些人和一些事,不知道如果是好,前天给芳、给爸爸妈妈都打了个很长时间的电话,把传说中很便宜的189给打透支了,似乎我是干什么事情都是喜欢透支着用,不管是钱还是手机话费,或者是感情,或者是生命,昨天晚上和几个朋友聊到很晚,说了很多以前的事情,很难想像我和她们之间还能像朋友一样开着我们自己之间的玩笑,只是最大的感叹就是,有些事情,错过了就错过了,没有办法再找回来,包括十年前的那份纯真的爱,包括十年间那些人那些事。

时过这么多年了,我还是没有放下很多,最近这四年,我想明白很多事情,也懂了很多事情,我也人生第一次让爸爸妈妈感觉:潘韬确实很利害,是拿了那么多的工资。可是,二十年的风风雨雨就只是换来这么个结果吗?

有一朋友说,她要把最后的一点感情留给等了她十年的人,可是,我想,更大的原因是:十年了,也应该找一个爱自己的人过了。我不认为她所说的这最后的一点感情是真正的感情,或话只是想为自己找一个真正的避风港吧,只是,我为我那等了她十年的朋友感到不值,我十年间,欠下一屁股的情债,他十年间,只为了等一个传说,而当这个传说真的要成真的时候,他却又告诉我,自己已经迷茫了。我知道,他现在已经不知道为什么要苦苦地过这十年了,就像我一样,我也不知道为什么要过这十年了。

总是在自己的文字和话方间说着让大家感觉自己已经经历过沧桑的话语,总是把自己当作一个才的桥比别人走的路还长的老者,所以,哪怕我买域名都喜欢使用那种比如 onmr.com、caotang.com、sixing.org之类的,就像我以前 说的,总是把自己当作一个文人,有时还把自己当作一个大师,其实似乎自己啥也不是,有时候保是感觉自己在忍受生活吧,只是,忍无可忍的时候,再重新再忍罢了。常说人可以像猪一样的生活,可是永远也不可能像猪一样的快乐,而我不是一头猪,作为一个人,而且还是一个男人,本来就应该经历很多吧,没有历史的男人总是不完美的,我总是在朋友面前说我如何完美,那哪怕是痛苦也都应该比别人完美吧,谁叫我是一爷们,而且还是纯的呢?

今天听一朋友说,某机关天天有人让他爸爸请他们吃饭,一次就是一两千,这也难怪,在现今这社会,很多时候本来就是人活得像狗,狗活得像人,而且有的时候,人要真的像狗一样的活着了,那可能还真的没有啥烦心事儿了,谁 叫狗能天天吃香肠,而我却天天啃馒头呢?做人难,做男人更难,做个好男人更难,所以,没啥事儿的时候,我也不想让自己难上加难,可是现在,我已经把自己丢进了一个没法不难的境地,所以,就让它难去吧,反正,大不了,回家种地去,别告诉我现在种地我都没资格,再怎么说,当年我也是上过山下过地,砍过柴放个牛的农村娃……

感情吧,现在看见谁的照片都会有很多回忆,都会思绪万千,只不过,有一个人,让我更加怀念吧,说多了也不益,只是,自己心里面放不下她,那我就像人们常说的,生活就像被强奸,抵抗不了的时候,那就学会享受吧,所以,我想她的时候,就没有必要再去克制自己如何去忘记不,有些人,想让自己去想却想不起来,而有些人,想忘记也忘记不了,对于你,何况,我还不想忘记呢?

今天确实说了一些让人听了很难受滴话,不过不管别人怎么感受了,我无所谓,我只是把曾经从她嘴里说出来的话意思不变的说给她听而已,你可以说我是在报复,但是我从来不报复人,只不过想让她明白她自己认为不在意的话语给别人是什么样的感受而已,反正大家怎么看我,我一直都是无所谓的。

另外,今天北京一直下雪,可是这雪也一直都不化,哪怕是被踩过的雪也不见有一点化的,可能这就是北方下雪和南方下雪的差别吧,其它的也没见着有什么不一样的了,反正,它下它的雪,跟我没关系 ,我无所谓。

听说明天凌晨北京的气温在零下14度左右,不知道是不是真的,如果是真的那明天应该就不用出门了,或者应该很多人都会放假吧,反正我现在白天也不用挤公交去某个地方上班的,所以,外面冷不冷,跟我没关系 ,我无所谓。

今天上网上,碰到高中时的女友,也不知道她现在是不是真的过得很好,不过似乎这已经不是我应该管的事情了,虽然我心里还是放不下很多人,因为总是感觉对不起她们,不过对于今天的她,过得好,替她高兴,过得不好,我也无能为力,我无所谓了,因为我确实从来没有喜欢过她,从与她好的那一天起就已经和她说得很明白,我这辈子也不会喜欢她,虽然我有不应该,但是我还是给自己找理由了——那是年少无知吧!无所谓了……

今天经理又不知道去哪里了,不过今天突然有一种很不好的感觉,不管怎么样,在公司和商业经济面前,有很多事情并不是我应该管的事情 ,不是我应该管的,那我就没有必要去管了,反正,最多,我丢了工作,少了一个月的工资,虽然我还是很想把所有事情做好,可是外界的影响太大了,我也有自己需要的东西,我也想赚更多的钱,而并不只是老板一个人,所以,在利益面前,我相信任何一个人,都会选择利益,或者说,任何一个人都会有一个弱点,会被某个东西驱使,只不过大部分人的这个弱点就是利益,说白了也就是钱……不过,最后有些事情最后的结局是怎么样的,我无所谓,毕竟,我已经努力的去做了,何况,这本来就像老板说的,这些不是我应该管的事情,所以,我更无所谓了……

来了现在这个公司 ,尤其是上了这么久的班了之后,我发现我确实是对什么都无所谓了,无所谓精神固然可贵,可是属于自己应该做好的事情还是得好好的做的……所以,我还是会像以前那一直认真的做下去的……做得好不好,你可以无所谓了,因为,这些事情确实又是和你是没有关系的……

昨天整理好的,在以后的几个月里,上班就是在这个地方的,虽然冷了点儿(这个屋子是暖气的终点站),不过心还是热乎的,哈哈。

昨天晚上整到十点半,突然发现,原来现在已经没有车会在晚上十点多钟来接我们了,早上也不再有车早早在外面等着我们接去上班了,可能一下子还没有适应过来吧,昨天搞到十点半,然后连公交都没有了,为了省钱吧,也不打的了,所以全体都在公司过了通宵。

把东西都整理了一下下,因为过几天就要搬了,同方大厦已经不再属于我们了,取而代之的是六环外的一个小四合院,生活、工作、娱乐全部在那里,当然,我们都很喜欢那个地方,至少空气比市区内好得多,也没有大城市的那么喧嚣,正好让我们认真工作了的。

昨天买了一个电信的3G和一个3G路由,以后全体的上网就靠它了,希望它能好好的发挥啊,实在是找不到一个更加合适的3G,只有电信的能保证我们一天有10个小时在线,其它的都太贵了,而且还满足不了我们滴需求,也不可能每个人一个3G,所以就只能选择最合适的电信的了。

等天亮了,再回去,可能也不用休息了吧,还得洗澡、吃饭,现在正在集体斗地主,也应该娱乐娱乐了,这几个月大家都把自己绷得太近紧了。

从哪里跌倒就从哪里站起来,不管是一个人或者是一个企业都应该是这样的吧,要么在失败后倒下,要么在失败后强大,我愿意选择后者,虽然,或许结果是另一次失败……

公司所有人在今天一起吃了饭,应该算是几个月以前成立的“联盟”,现在宣告解散吧,给我的感觉,大家还是好聚好散的,虽然,没有了以前在一起吃饭时的那种欢乐的气氛,但是至少,我们都还能再在一起走完这最后一天吧。我跟着招我入职的经理走,带着那一帮乳嗅未干的“小伙子”们。

就在这几天,我们将回归原始,开始所谓的软件作坊吧,虽然曾经有过很多辉煌,但是,就在今天,我们得清醒的认识到,我们一切都得重来,或许我们能把以前的所有当作炫耀的资本,但是我更加认为,过去也是一种包袱,不管是好的还是坏的,我们一切都得重来。

大家把希望寄托在我身上,我把希望寄托在夜以继日的努力之上,因为,我还是深信:

好的目标+信心+努力=成功

继续无题了,因为我发现我现在无语了,我只是一个领着老板工资的打工仔,老板说啥我就就座帮啥,老板说这个能赚钱,我就应该努力把这个做好,老板说 要做那个东西,那我就应该做那个东西,一个人去给别人打工,做事有两种可能性,一种就是老板说什么就做什么,另一种就是老板说什么自己都要想想然后还要主 动去和老板说这说那说自己的想法,最后只有在两个人都协商好了之后再去做,两种人两种做事风格两种结果,我选择了后者。

如果我选择第一种, 那么,我不用去想老板让我做的事情之外的更多的事情,只需要把老板交给我的让我做的做好就行,赚不赚得了钱,我无所谓,因为那是老板的事情,我只需要管好 自己的事情,只要老板给我发工资就行了。如果老板当时让我做出来的东西,赚不了钱,那是老板自己选择的路,和我没有关系;然后我现在处于一种什么样的状态 呢?老板出来的每一个点子我都要想好多,还要和老板急和老板说好多好多,最后更多的是老板偏向于我的想法,这样一来,老板的决定就受了我的影响了,如果最 后没有赚到钱,那么老板是绝对会怪我的,而且可能是所有的责任都由我来的背的。

但是再想回来,如果我选择第一种,那最后如果老板没有赚到 钱,其实最后的责任还会是我来背的,因为在企业里面,“老板是没有错的”,老板把产品定下来,卖得好,那是他选择的好,我只是帮他去做了实现而已,我有功 劳,但是最大的功劳在老板,因为没有他的想法,我是做不出来这个东西的;如果卖和不好,那是他选择好了,但是我没有把产品做好,所以才会卖得不好。好然不 管我选择哪一条,最后的结果都是一样的,那我肯定会选择后一种了。

另外,和同事之间吧,我总是感觉老板给我的权利很大(不知道是不是真的 大),因为我可以安排很多同事做很多事情,但是其它同事却不来安排我什么,所以我自认为的想我是现在这个公司里面一个很重要的人物,但是话又说出来,不管 怎么样,我都只是一个打工的,如阿朱说的,“我没有哪怕公司1%的股份”,我的所有收入都来自于老板发给我的工资,而前提就是我帮老板赚到钱了,而现在公 司,我个人感觉,正处于生存期,能走过这几个月,那以后的路,不说光明大路,但是至少会顺利很多,因为我对公司的,尤其是公司里由成带头生产出来的产品信 心十足,但是谁又敢保证,我们能走过这一段艰难的历程呢?

最近受一朋友推 荐,在看《走出软件作坊》,很受启发,虽然我现在还没有处于某种地位里面,但是我确实真心的希望我现在所在的公司能走出去,哪怕是一小步,虽然我总是徘徊 是否离开现在这个公司这个问题之上,但是我是真的对现在的这个公司是很有感情的,包括老板、同事以及公司的一切,我不知道为什么会有这样的感情,但是确实 是那么的强烈,哪怕这个公司做的事情是和我的思想完全相反的,哪怕这个公司多么的让我感觉不到出路,或许,是我这么久以来一直都把自己的心血(如果算的 话)都投入到这个公司里面吧,我总是带着希望,希望我的公司能好起来。

我希望有那么一天,公司能在自己的业务领域里独占一片天,哪怕只有很小的一片,我是带着希望来到北京的,也没有给自己留下多少回头的路,我还年轻,我总是相信,好的目标+信心+努力=成功。

来现在这个公司已经有三个多月了,给我的感觉还是不知道自己到底要做什么,所以,我还是有如标题所说的想法,我到底是去还是留,如果选择去,我又能去哪?如果是留,那我是应该完全的服从还是需要把自己也定位在一个决择者的位置?

如果是去的话,那么我能走的路只有两条,一条就是回家把自己关在家里干着自己一起十分喜欢的事情,纯粹的SOHO,最后就成了“下雨了,刮风了,砸雹子了,结冰了,躲进小楼成一统,管他春夏与秋冬;只要没停电,我工作我快乐了”;或者“穿着睡衣上班,喝着奶茶看资料,听着音乐做设计,没有唠叨,没有申斥,只要我能出来好活儿,我就是睡着躺着拿着大顶干,都没有人说我半句”,我应该为“让一部分人先SOHO起来,最终实现全人类的SOHO化”这个指导方针做出贡献。

When the sun shines on the mountain And the night is on the run It’s a new day It’s a new way And I fly up to the sun 

I can feel the morning sunlight I can smell the new-mown hay I can hear God’s voice is calling For my golden sky light way

Una paloma blanca I’m just a bird in the sky Una paloma blanca Over the mountains I fly No one can take my freedom away

Once I had my share of losing Once they locked me on a chain Yes they tried to break my power oh I still can feel the pain

Una paloma blanca I’m just a bird in the sky Una paloma blanca Over the mountains I fly No one can take my freedom away

Una paloma blanca I’m just a bird in the sky Una paloma blanca Over the mountains I fly No one can take my freedom away

不过再把话说回来,如果我自己去SOHO,那还有一个最重要的问题,那就是生计问题,说白了就是钱啊,现在在公司里面,至少有一个,每一个定期我都能顶到心里还满意的钞票,也就是把公司的收入和我自己的收入两个分开了,我不用去管有没有客户,只需要做好自己的工作我就可以顶钱,而且现在的公司,都是包饭包住还有车接送,这待遇我想应该是可遇不可求的,就这三包可以省下的钱应该超过了两 千多了,再加上工资那我也算是半个白领了,而且工作也不是很累(毕竟我都是当年通宵过来人了,现在这点儿算不了什么)。

 

尤其是对于我这种不会生活的人,饭送到手上了,至少我每一顿饭会吃了,不会像一个人的时候,一忙就泡面了;包住了,我也不会去为找房子而心烦了,毕竟在北京能找到一个适合自己的又价格合理的房子也不是一件容易的事情;然后包车接送这个应该算是最大的好处了,北京的车是多么的多路是多么的难走生命是多么的危险我想都不用我在这里说明了吧,包了车了,每天早晚就都不用挤公交,这也算是最爽的一个好处吧。

然后现在吧,我是一个喜欢玩的人,现在的老板也没有像其它公司的老板那样,把什么都定得死死的,每周还会带着我们一起出去玩玩,像上上周去逛了清华,上周还去了北大,这周去了北京的琉璃厂大栅栏前门和五府井,还给我们一路讲解,毕竟,老板也算是小半个老北京了。

而我想走的一个原因,可能也是因为其民主有点儿过了吧,或者说有些时候做事情没有一个确定性,我感觉这是我们做开发的这一行最怕的事情,对于技术员(在这里,所说的技术员包括写代码的,搞设计的,做前台,架构的……)来说,最怕也就是不确定性太多的老板和客户了。

然后,其实我现在想留下来死心踏地的做下去的想法居多,但是我还是不得不考虑另一个问题,那就是如果我继续这么做下去,那么我又应该把自己放在一个什么样的位置,我想到的有两条路可以走,一条就是:老板说一我不二,说二我不三,让我干啥我干啥,不我改啥我改啥,我把自己的任何想法放进工作里;而第二条路就是:我要在公司里面有绝对多的决定权,我能制定并监督公司发展方向及期实施进度,比如要开发一款产品,那么我应该对这款产品有决定权,然后人员安排,进度安排等等由我来管理或者说在管理上要以我为主。这两条路似乎哪一条都不太好走。

如果我走第一条的话,那我感觉我的工作量会很小,我也不会再要求公司给我开现在这么多的工资了,毕竟一份事一份钱,我做什么样的事情我就会收取什么样的报酬,我不会去多要或者说就算多要也不会多这么多。但是如果工资少了,那我又有了另一个离开公司的理由了,因为如果公司给我的工资低于我的最低要求,我不管是IBM或者是刚创建的小公司我都不会去的,这个我在以前都说过了,不是我有多牛,只是我一直都很现实罢了。因为我还有很钱需求还,我还有好多自己的梦想要去实现,比如走完中国的每一寸土地,把我眼中的祖国分享给大家;我还想买一辆自己喜欢的车,自己喜欢的相机,我还想回家和朋友开个农场过着山村生活……这一切的一切都是需要投入的,而这个投入,也就是靠我现在这些年去赚得了,所以,我每一个时期都给自己有一个最低工资(或者说收入)要求,满足不了这个要求的,那我肯定会去找其它的路子的了。

好了,现在就只有最后一条路了,那就是老老实实的待在现在的公司,把自己的所有才华能力全部都展示出来,要在现在的公司里面处于一个有绝对地位的位置,能对很多事情做决策性的决定,我能完全的管理每一个和自己工作相关的项目的进度,人员安排等等,但是这条路,又得看我的上司能不能给我这么样的权限了,如果只给我了0444,那我肯定是不干的,至少要给我0755,让我自己还能有自己的想法,最好是给我0777,完全发挥我自己的能力,技术这一块儿就不要再让不懂或者说半懂的人来管了,当然,我也不会去管销售不会去管财物了,我这里所说的技术这一块儿让我来管,不仅仅是管技术的实施,还包括技术团队的人员分配,计划,人员的去留等等,不管是做产品还是做项目,都必须有一个强而有力同时成员团结的团队,而这样一个团队肯定有且需要一个人来把所有人人凝聚到一起,而我一直想做的,在现在这个公司里面想做的,就是这样的一个人,因为三个月以来我都是处于这样的一个人以下,或者说时而上时而下,所以,我一直都没有感觉到很爽,虽然得到公司重用,但是却从来没有把我自己想去实现的价值实现,所以,不管是工作,还是娱乐还是休息我都没有真正的爽过,不爽的日子过得久了,就会想着换另一种生活,这也正是我想离开的原因之一,似乎我的生活一直都是这样,其中似乎也包括爱情。

我在刚进公司那天就说过,我进公司上班,要么成为公司的要员,要么仅仅只是一个善于执行命令的机器,我不会做中间的那种人,但是不管我是哪一种人,都离不开另一个定位,那就是,只要这个公司不是自己的,那么我都只是把自己租给公司,就像租房子一样,我现在就是这么一个房子,公司是租户,公司可以把这房子装饰成商店卖东西,也可以装饰成卧室,还可以直接把这房子丢在那里任其破旧,而我,公司让我做产品,我就做产品,让我搞管理,我就搞管理,只要公司按期付我租金就行了。

而另外一种,如果是租户现在感觉这房子不行了,他可能会在房子到期之后退房,而房主,看到租户把房子弄得不成样子了,房主也有权利选择在租期到后(或者在租期内)解除租房合同。而我现在,就正于这种是否解除租房合同的决择过程中,如果按照我以前的性格,我早已离开现在的公司,而为什么不走,还有其它的非工作原因,如下:

朋友不情愿看到我离开,我这里说的朋友,不是说现在的同事,而是以前的朋友,我给人的印象可能总是:总是遇到困难总是先考虑放弃再考虑坚持,而我这一次或者说我现在应该学会为了某一件事情(不管是大是小)都要坚持下去,我应该相信,未来总是比现在好的,我应该明白,万事都不会顺利的;另外一个原因,就是来自爸爸妈妈的,我不能再去用他们的钱了,就像前天买了APPLE MACBOOK PRO 花了两 万多,我得(一定得)自己把这个钱还上,而不是再把这么重的担子像以前那个不懂事的孩子丢给父母,我还得为我自己的理想埋单,这所有的这些东西都需要我现在有一个十分稳定的收入,而在公司里领着不少的工资应该算是稳定了吧,但是考虑到以后,现在公司的这种做法还是没有让我感觉到绝对的稳定,我不想最后搞得“大树即倒鸟散去,小径通幽我自来”,但是“此处不留人,自有留人处”的情况对我来说却是无所谓;另外一个原因的话,不管我将来做什么,在一家能把自己放在某一个不小的位置上的公司里面工作一段时间,对自己将来将有很大的帮助,尤其是像我这种刚刚从校园里走出来的人(真正的说,我应该从七年前就已经完全离开校园了);还有,现在的经理人很好,虽然有些时候我们都不知道他要干什么,但是似乎这已经成为我们这帮小毛头的通病了,说一些话总是都让别人不明白,从情感上面来说,我不想离开现在的团队和公司……

原因还有很多,这里也不用一一道来了,我只想问问大家,如果你现在处于我这么样的情况下,你会是去或是留?是服从或是决择?

做网站这一块已经有好几年了,从最开始请教别人,到现在别人请教我,从最开始花钱请人给自己建网站到现在别人花钱给他们建网站,在这个过程中,感受最深的一点就是:网络行业中,“服务”应该是最重要的。所以,而现在所有这些又都是国内任何一家相关企业最缺少的。

我认为,服务并不是说你的东西做的有多好,虽然东西的好坏很重要,但是有一点更重要的,那就是用户“体验”,说到体验我想大家应该都知道,做界面设计的都会考虑到用户体验,而作为一个服务行业,也必须要非常的注重体验。就算产品做得不太好,但是用户体验做上去了,还是会有很大一部分忠实用户的,而我的目标是:把产品做到最好,体验也是最好。

以前自己卖主机,给别人做网站、代购美国域名等等,在这些过程中,感觉自己的态度一直都是十分不错的,我可以和一个不买我主机的人去介绍一个晚上的主机知识,帮他分析哪些主机更加适合自己,生意做不成做朋友也是十分不错的嘛。而最终的结果就是,我并没有向他们收取多少钱,他们也愿意给我标价更多的钱,应该让他们感觉所有的这些支出都是值得的。

而现在,如果说非要我成立或者运营这么一家公司,我肯定还是会按这个方向去做,为了将来能更好的去实现这么一个目标那么我就得从现在开始就培养属于自己的团队,最主要还是技术开发人员,因为我个人感觉,不销售产品而按客户需求定制产品这一类的业务,技术员的工作量是占得最大的,因为他们除了需要做开发之外,还需要与客户一次又一次的沟通等等。

另外,企业的客户积累也是必须要做好的,一个忠实的客户绝对能带来至少五个其他忠实的客户,就算速度为一年一个忠实带来五个客户,那么如果我现在有一个忠实客户了,在明年将有六个,到了第二年年未的时候就是三十六个,第三年年未的时候就是36 * 5 + 36 = 216个客户,再往下就成极数增长了。

不好意思哈,我又开始做白日梦了,主要是因为今天经理跟我提了一点事情,想到这里了,所以就写了下来,哈哈,其实没啥事情儿,我现在自己都不知道我这篇文章是在写什么东西了。

还有几天,我有一个朋友就会过来我这里了,也不知道他能不能把这个工作做好,主要就是做界面设计,他本身是搞艺术的,不过并不是界面设计这一块的专业,但是由于基础放在那儿的,而且他本身也十分的强悍,自学能力很强,更重要的是很能吃苦,就像牛一样的,所以,我想上手应该很快,用心做了总是能做得很好。

再又想起来了,说到工资的事情,我爸爸一直在跟我说,除了面试那一次,要叫准自己的工资之外,正式上班了就不要天天提加工资等等事情,我爸爸的理由很简单的,把自己应该做的事情做好了,把不属于自己的事情但是自己力所能及的事情也帮助别人做好了,那老板也都是看在眼里的,就算他最终不给我加工资,就算我最终还是因为没有加工资而跳了,那至少有一个,我没有对不起我领到手的这些钱。

说到这个,我到是得向最开始那么信任我的朋友说声对不起了,去年的主机合租后来应该我的QQ号码被盗,所有联系方式都被恶意删除之后,一直也没有找到一个合理有效的办法找到以前大家的联系方式,自己的博客吧,本来人气也不旺,虽然后来都去WPCN等地方发了帖子告诉大家主机快到期了等等之类的消息,但是最后还是没有完全通知到个人,导致了好几个用户的数据全部丢失。

没啥可说的了,今天早点儿睡了,电脑打开了,实在忍不住,就上来唠叨了几句,各位别见怪。

刚才自己看了看,这篇日志我连自己都看不明白是啥意思了。

我达达的马蹄是美丽的错误, 

我不是归人,

只是过客。

不知不觉,自己接触计算机已经十五年了,接触网络却只有短短的五年,在这五年里,从最开始的一无所知到现在的一知半解,走过了很多的弯路,寻过名师,只是,还没有出高徒。现在自己居然还身处一公司“要职”了,算得上是运气过份的好吧,只不过,还是在想着自己的SOHO路。

 

“Small Office,Home Office”,我想我最有可能取向于“HO”,首先按大家说的,我很恋家,虽然总是身在外,却一直心朝内,这种情况的出现,应该也算是“我是一个一直处 于矛盾之中的人”的完美体现吧。把自己的家当作办公室,不去找工作,而是以自己的兴趣取向和技术能力寻找临时雇主/业务,自己做自己的老板应该算是我对 SOHO的理解,也是我一直以来最想做的事情,只是碍于生活与个人性格所迫,最终还是在今年找了一家公司过起了日出而作日落半晌却未睡的日子。

虽然工作是有了,但是还是没有感觉到稳定,一来是公司的业务方向与运营方式完全背离自己的意愿,所以,首先一个我做起事情来,不可能得到高最的效 率,也不会让自己以最愉悦的方式工作;另外,以自己的性格,从不愿意受约束于他人,这使得自己总是要把自己放在决策而非执行者的位置,哪怕是与自己的客 户,都努力着自己自己更加居于主导地位,而这也正是这么久以来也一直在博客里抱怨公司上层对自己为公司所提意见和建议不予以任何采纳的最主要的原因之一; 第三个,我太过于有自己的想法,而且想法很多,但是自己却很少能坚持下来,这也是自己最为痛恨自己的地方,也因为这,我与芳三年的感情都付之东流。

对自己各种状况的分析,能有助于自己制定出更加完善的下一步的计划,而我对自己的状况的分析,却总是让自己陷入对现在的厌倦,所以,我从来都不作任 何分析,只是按着自己的意愿来做,而现在,我居然分析了,想了很久,想的是我到底该往哪里走,本认为自己会得出很好的结论,然后自己付之于万分的努力去实 现自己的目标,可是事与愿违,得到的结果居然是“我还能往哪儿走”这么一个大大滴问号。

最终,还是落回到SOHO,或许,应该说我必须走向SOHO。

我们经常会说“X一代”老了,“Y一代”也已经落伍了,我是“@一代”。这里所谓的“@一代”就是伴随着电视、电脑、电话以及已经走进每家每户的互联网一起成长的一代人,而我正好是这一代人中经历过所有阶段的人。

从小家里并不算有多富裕,但是父母本身就是走在了当时那个时代前面的人,早在县城里只有几台电脑的时候,我家就已经有了一台DOS机,还是蓝屏的, 健康的,可能在92年那个时候,还有无数现在活跃在互联网上的人都还不知道有电脑这么一回事儿吧,从那个时候开始,就已经给自己的人生目标和职业价值定了 位,可以说那个时候家里添置的这一台电脑已经影响了我十五年,而且其影响还将继续持续至少好几十年,从那个时候开始,自己就已经完全的迷恋上了计算机,哪 怕当时我仅仅只是会个五笔给自己所在的小学输入一些文档和试卷。

“@一代”人总是有很多特点,就像我,一箱泡面、一台可以联网的笔记本,我就可以足不出户好多天,所谓的宅男吧,我算是一个了;对于有一份固定的有 稳定收入的工作的不屑一顾,也算是我最大的特点了,再加上我自己从不向人低头的个性,使得我在任何一个地方工作,都不会听命于任何一个所谓的老板,哪怕他 给我开百万月薪,我想走,我提着包就走,因为虽然我缺钱,但是我还是有办法赚钱,虽然不是很多,但是已经完全能满足我现在的欲望和将来对自己生活的憧憬 了,无非就是一车一屋一电脑,就这些东西,就真的需要我去找一个单位拼命的工作了吗?个人感觉不需要。

或许有人会说到,等到将来有妻有子有家庭之后,我就不会再像现在这样无事无钱无工作了,当然,很有可能那个时候会我的人生观价值观都会有很大的改 变,但是终身不娶终身不嫁的人也确实是大大有人在,我从来不想把自己束缚在“出生-读书-工作-买房-结婚-育子-养老-死亡”这一条道道里,有总是有太 多追求,那为什么不去追梦,却非得把自己往这坑里丢呢?

不过话又说回来,虽然我一直都是在理想世界里过活,但是我还是确实是被现实生活所困,就像总是在任何人面前表现得“生命就应该快乐”,可是总还会自 己一人人躲在被窝里痛哭,似乎这是每一个人的不是秘密的秘密了,我想每一个人都有这样的经历吧。而痛哭的原因,其实大部分就是自己真的不快乐了。

我想说的是,我现在还是没有从理想世界里走出来,还是把自己关在象牙塔里面,想着衣来伸手饭来张口甚至连上个厕所都感觉到麻烦还真不如往被档里尿一 把来得快,但是我自己的某些地方地方却已经走了出来了,就像我现在想一个像我现在所工作的这样的公司应该从哪些方面可以利益最大化,而怎么走又能更加快速 的赚钱,怎么样能赚更多的钱等等之类的与钱有关的话题;我也常常会就算饿了也不出去吃而是等着公司食堂的饭送过来,哪怕离送饭的时间还有很长;在几个朋友 一起出游的时候,我也会想着应该带多少钱,怎么样才能让自己出最少的钱;有时,我甚至还会想,这一支铅笔我真的应该买吗?我真的应该抽红塔山而不是红河 吗?

或许我真的成熟很多了,或许现在的种种只是一种幻觉,但是我确实开始与钱打交道了。因为我发现了,有钱确实比没钱过得很潇洒,而像我这种太过于自恋 的猥琐男又正好总是渴望自己是来在世上潇洒走一回的,这从我自己的花钱习惯上面就可以看出。我一般身上是不带钱的,而是上哪里都是要么刷卡要么直接赊账, 尤其是在高中那个年少气盛的时候,就算是赊账都是要很潇洒的,东西一拿,二话不说直接走人,几乎每一个学校周边的老板都允许我这样,他们会把我在他们那里 所花的每一分钱都详细的用一个专门的本子记下来,然后每到年未,我爸爸妈妈就带着钱一家一家地给我去还债。现在想想,那个时候,真的是很傻很天真,而且不 是一般的。

而现在呢?虽然收敛了很多,但是其本质上还是没有改,我喜欢没有密码的银行卡,尤其是信用卡,因为我感觉刷卡的时候输入密码太过 于麻烦了,所以;我总喜欢买某一类型东西中最好(不是最贵)的那一种,因为我感觉对于自己喜欢的事物花费一些也是应该的;我总是有太多的欲望,而且很多都 是超出于我的消费能力之外的,就像我现在日日思念着的M9;我又总是对朋友太过于大手了,总是有求必应,哪怕自己已经吃馒头咸菜了,谁说要钱的,我一般也 都是二话不出,网上一转就过去,当然了,那还得看有自己有没有钱,真的是一分都没了,朋友问我要一分我也拿不出。

然后自己这么想了这么多自 己的状况,始终感觉吧,所有这一切,都避着我不应该被死定理所约束,适合我的最终方案应该就是走出去自己干,哪握是头破血流也会比有一份稳定的工作好得 多,能给自己更多更大的满足感;另外一个,我一直人一个愿望,所有我的朋友,总是那么的堕落,要么二十三四了还是整日瞎逛,要么结了婚了还在外面乱来,有 一些虽然已经后悔当年的年少无知,却是没有半点悔改之心,其实这之中很大一部分人成了现在这样,都是因为我是他们的朋友,或许说得再准备一些,因为以前的 我和以前的他们是太过于要好的朋友,以至于影响他们太深了,现在我自己从那些无知的阴影中走了出来,而且也重新过走了向上的生活,可是他们要么还是无法自 拔,要么是想自拔也无能为力了,而我现在这个一直深埋在我内心深处的愿望就是帮助他们找回自己,所以,我总是要自己比身边的人学更多的东西,做更多的事情,赚更多的钱,为的只是离这个理想更接近一些,或许,我就是我能抛弃爱情与感情把自己变得无情的第二个主要原因吧,我亏欠他人太多了,我现在根本就没有资格去生活。

似乎已经说得没完没了了,我总是这样,也不怕再多这么一次了。本来是不想再唠叨了的,哪知保存按钮一点击,就又想再回来继续,唉,没办法。

其实,自己SOHO的想法越来越强烈,也因为自己的爱好过多吧,比如摄影、旅游、Drupal、电影、艺术、音乐……等等,我是想让自己在更多的领域走得更深,那我就必须让自己脱离标准的生活道路,而现在的首要任务就是不能把自己与某一家企业紧紧的锁死在一起咯,SOHO应该是现在最好的一条道路,这样一来,才能有更多的时间让自己自由安排,更多的精力可以利用,而这一切,都脱离不了网络,再近一点,我是脱离不了电脑的,再和自己更加相关一点,我是得一天到晚都是坐在电脑面前的,这样一来,健康应该又成了我最大的问题了吧。

以前不知道日程有什么作用,一直以为日程安排本身就占用了过多的时间,与其花那么多时间去安排自己每天应该干什么,还不如把这些时间都用来做什么了,我也一直就这么做着,可是过了这么久了,越来越感觉到,原来没有计划性的做,还不如不做了。

最主要是因为这些时间上了班,然后工作量比以前个人搞的时候大得多了,一没计划,发现自己什么事情都得干,然后就是一会儿干这个一会儿干那个,最后发现没有一个干好了,再加上我本身就是对自己某些方面有点儿近乎苛刻(只是某些事情),所以,有很多时候,我把时间都花费在把同一件事情重做再重做上面,比如把一个页面的代码量调整到更少一些(不是自己的,自己的才懒得去整了)。

现在发现还是得把自己每一步应该做什么,什么时候需要完成干什么都计划的更详细一些,这样,也算给自己一点儿压力吧,老板的网站名字是改了又改啊,已经是第五个了,域名当然也是跟着名字一样改啊,搞得我现在都不知道到底怎么做了,唉,其它现在的老板还是很有想法的,只不过就像我以前一样,想法太多就还真不如没有想法让我自己去干了。

爸爸妈妈还有奶奶现在正在飞机上,今天早上六点钟就从住的地方走了的,其实心里还是有一点想哭的感觉,可能是真的想家了吧,只不过在别人面前或者在自己面前假装坚强吧。出了社会真的和象牙塔里不一样了,什么事情都得自己为自己想为自己做,很多时候还得把一大把的时间花在帮别人想帮别人做的上面,有时候从身体上会感觉到累,是真的,这是以前从来没有的。

不过说到累,其主要原因还是在于心里面有些累,原因在哪儿呢?可是也和现在的公司上班的事情有关吧,好几个同事总是问同样的问题,一遍两遍三遍的,和以前博客圈里玩程序玩什么什么的不一样,自学能力有些差了,很多时候问题的解决之道不管是网上还是书上都写得明明白白的,可是就是不会,其另一个原因可能还没有习惯于遇到问题自己去解决吧,就像学生一样,还等着老师去讲试卷,这个从她们问问题的话语里面就可以感觉得到,她们问题的时候都是:问你一个题贝。然后描述自己有什么问题不会解决的时候,是用的这么一句话:这道题我不会帮,帮我做一下下贝。

又说偏了哈,说说计划吧,没有计划就做,问题真的还不是一般的小,计划应该详细到什么程度呢?现在给我的感觉是,哪怕就只是做一个静态的页面,都得有一个需求分析的过程,然后再根据需求分析去设计布局样式等,最后,在做图的时候,绝大数情况下应该精确到像素级别,而且还需要考虑到以后转换成xHTML + CSS的过程中可能会遇到的问题,同时还需要想明白问题应该怎么解决,而在转换的过程中,又最好是考虑到这个页面在以后是不是还会再用到,就算不全用到,布局是不是还会再用到,如果会,那就还应该考虑考虑是否可以做得近似框架一些,这样以后再去转的时候也好转得多,为以后节省了很多的工作量。

那再说大一些的计划呢,我想我的计划应该是这么做的,2009年11月21日睡觉之前要完成XXOO主题的制作,XXOO主题到达到一个什么样的完善程度,2009年11月22日上午将服务器虚拟主机配置好,下午将XXOO网站上传到服务器并且完成初步测试,提供公司内部同事测试方式,XXOO的时候应该正式可以上线。或者还有,我什么什么时候需要把哪个自己的网站上线,网站的内容应该在上线之前都准备好,是否需要做广告来宣传自己的网站等等。