学习的代价
Saturday, May 23 13:58, 2009
4 comments/417 hits
之前上学的时候,经常听到一种关于考试抄袭说法:如果某人的错误和另外一个人的错误雷同,那么就可以认为某人在抄袭。做就是抄袭的弊端,连错误或者说不好的地方也抄袭过来。
在本博客的后台程序的完成过程中,不可避免的学习了大量的其他优秀blog程序的优点,但是由于在学习的时候产生了先入为主的思想,所以使得对于某些设计不合理的地方,也认为是“就应该这么设计,这样是最好的”想法。从而使得自己的设计也不能得到进一步的提高。这就是学习的代价。当然了,学习别人还是必须得,只是要在学习的时候学会独立思考。
今天躺在床上的时候,我突然想不起来对于这个blog系统,某一片文章是怎么展示的。我记得用到一个变量permalink,而且这个permalink产生的过程,相仿的复杂。每篇文章的url格式如下所示:
注1:通过baidu所搜我得知,原始样式的链接是通过设置WordPress中的url参数为: /%year%/%monthnum%/%postname%/ 来实现的。鉴于大量的博客使用WordPress,所以使用这样的url也就不为奇怪了。但是我发现更大量的博客使用的是/archives/%post_id%, 也有人使用由于本博客的archive用于显示archive(好像的确应该这样吧),那么文章就只好选择之前描述的那样:/post/%post_id%的样式了。
注2:系统之中还有一些别的不太好的地方,比如可以利用GAE数据库提供的reference_set的强大功能,大大简化数据库查询操作的,但是因为不太好改了,所以就不想改了。
在本博客的后台程序的完成过程中,不可避免的学习了大量的其他优秀blog程序的优点,但是由于在学习的时候产生了先入为主的思想,所以使得对于某些设计不合理的地方,也认为是“就应该这么设计,这样是最好的”想法。从而使得自己的设计也不能得到进一步的提高。这就是学习的代价。当然了,学习别人还是必须得,只是要在学习的时候学会独立思考。
今天躺在床上的时候,我突然想不起来对于这个blog系统,某一片文章是怎么展示的。我记得用到一个变量permalink,而且这个permalink产生的过程,相仿的复杂。每篇文章的url格式如下所示:
之前一直以为这是个不错的想法,直接从url就可以看出文章的年月河标题,可能是有利于搜索引擎或者是对用户友好?但是后来查询代码才发现在每次显示文章的时候,都会进行一次数据库关于permalink比较的查询:youdomain.com/2009/5/your-english-title
然后,我就想为啥不对文章id使用更加高效的get_by_id的方法产生,对于我立马重构了url,现在时通过post = db.Query(Post).filter('permalink =',perm_stem).get()
这样的url来访问实际的地址的。而查询blog的语句也变得更加的高效:youdomain.com/post/post_id
同时由于原来的permalink没用了,所以在博客创建的时候也省掉了复杂的把文章标题转化为英语的过程。之前转化的过程为:先对文章标题进行trim,然后调用tranlaite.google.com,再用BeautifulSoap得到结果页面中ID为result_box的div的内容,并且用‘-’代替其中的空格。整个过程非常的麻烦,还容易出错。我之前就一直想怎么解决这个问题,现在好了。问题根本就不存在了,哈哈。post_id_ = int(post_id)
post = Post.get_by_id(post_id_)
注1:通过baidu所搜我得知,原始样式的链接是通过设置WordPress中的url参数为: /%year%/%monthnum%/%postname%/ 来实现的。鉴于大量的博客使用WordPress,所以使用这样的url也就不为奇怪了。但是我发现更大量的博客使用的是/archives/%post_id%, 也有人使用由于本博客的archive用于显示archive(好像的确应该这样吧),那么文章就只好选择之前描述的那样:/post/%post_id%的样式了。
注2:系统之中还有一些别的不太好的地方,比如可以利用GAE数据库提供的reference_set的强大功能,大大简化数据库查询操作的,但是因为不太好改了,所以就不想改了。
Recent Comments