我的新博客 2009-09-06 15:27:53 | 5个评论

总算,蓄谋已久的博客终于架起来了。这么一个简单的博客系统,却是搭建的如此艰辛,真的有些对不起自己啊。

初学django,有点像没头没脑的苍蝇,不知所措。于是直接扫django的官方文档,我向来都爱这么干的。urlconf, model, view, template,django的框架也就是围绕这四部分展开的。这样的架构也是很清晰的,urlconf模块用于进行url和view的匹配,其实就是rails里面的routes;model就是一个OR-Mapping的接口,将数据库的内容转换成python类;view跟rails下的controller有点类似,用于处理从urlconf映射过来的请求;而templte下面则定义了嵌入template tag/filter的html,用于最终的界面显示。总得来说,就我看来,django的架构跟rails是很类似的。

于是乎,自以为是,便开始了无谓的尝试了。首先是开始试用django的admin框架,这是一个极其简单的后台管理系统,没有仔细研究,便认定它的功能不够,没有太多可以自主设置的,于是就选择了放弃使用,转而自己实现。期间遇到几个问题,首先是comment系统,其次是tagging系统,然后就是tinymce的图片上传功能。

comment和tagging都是需要用到rails中所谓的polymorphic的关系,在django中对应的也就是contenttypes框架。因为对其不熟悉,用来很是不上手,又没有找到可参考代码,所以搞的煞是郁闷。当然,这也就罢了,最终还是搞定。

tinymce是一个开源的rich text editor, 编辑功能很强大,可以免去使用html来写blog的麻烦(但又可以编辑html),也可以免去使用textile之类的只有简单规则的东西。而我选择它的最大原因,是因为我希望能够在编辑过程中上传图片,这个仅仅使用textile的话几乎是不可能实现的(正因为此才抛弃了textile的)。但是,我并没有在tinymce中找到能够同时上传图片的功能插件,有点小郁闷。这并无大碍,上传图片功能还是很容易实现的。

而正当我的博客马上就要完工,正在为如何美化界面烦恼的时候,偶然间看到了一本Practical Django Projects的电子书,书中介绍了一个简单的博客系统,功能却正好符合我的需求,便草草翻看了一下;却发现中间的很多我自己实现的东西,其实django中都已经实现了,而且实现的比我好的多的多。admin, generic view, comment, tagging这些东西会让你的django代码少掉几百行,真的是太合我意了,便马上决定重写blog。于是,这个新的blog便此架设成功了,很是高兴。

接下来就是如何发布了。本来是想用nginx配的,可是由于服务器上的其他服务都是由apache配置的,无奈,只好使用apache。配好以后,却一直出现无法导入settings的错误,google了一下,基本可能的原因有两个,第一是settings文件本身的权限不够,第二是settings的路径配错;可是仔细再三检查了,都没有错啊。为这个问题,折腾了不下2个小时,于是开始对比另外一个已经在跑的wordpress系统,在经过“精密”的校对之后,终于发现,原来我的django目录是设在我自己的目录下,由于我自己的目录apache不可件,所以导致我的blog目录也不可见了。修改自己目录权限便搞定。

这算是大功告成,接下来的一些琐碎的小配置当然是会接二连三的了。但是,总觉得自己在实现过程中的最失败一点是:没有充分利用资源,没有想好怎么做的时候就下手,没有做好完整的搜索的时候就开始闷头乱飞,这也便导致了开始做了不少无用功。但无论怎么说,总算是架起来了,也算是一点安慰吧。

本来标题起的是“博客和bug“,原想写完博客的架设过程后再抒发一下自己最近霉运当头,无比郁闷的糟糕处境,现在看来,也没有必要写了,现在的心情却已经很舒畅了。接下来的一段时间会研究一下libfetion,原因是不想使用gui的界面。想用一个terminal下面跑的。另外,还想再研究一下vim,前两天做梦居然梦见了自己在跟人讨论如何使用vim,到头来发现自己听不懂对方说什么,悲哀啊……

 

    评论(5)
  • 周翾 2009-09-06 20:55:24
    很强大~~我是第一个留言的么??
  • Rcool 2009-09-06 22:27:37
    嘿嘿
  • 季敏雅 2009-09-07 07:40:10
    呵呵,虽然没看懂,不过好强大。
  • 邹余 2009-09-07 10:24:56
    django没用过。。。 我现在用wordpress http://reinhard.bt4.org/
  • 曹佳 2009-09-07 20:16:04
    To 余:我就是不想用wordpress才自己写的,呵呵。
添加评论
分类
  • Linux相关

    linux菜鸟,不断学习中……

  • Web技术相关

    ruby, python, javascript, css...

  • windows相关

    windows下面的一些东西...为了玩游戏,没办法

  • 人生感悟

    人生就是放屁。低调做人,不做臭屁,不做响屁。

  • 模式识别

    现在做什么都要模式识别。

  • 游戏

    dota...我现在只玩dota。当然,如果三国杀也算的话,那就也包括了。

  • 网站点评

    把这个类别加进来了,但不知道会不会真的写,不管,先写上再说。