Category: Symfony

  • 重构狗屎皮:第二天

    今天进入狗屎皮重构的第二天。实践证明,这第二天,确实是非常2的一天。

    首先,Symfony推出了一个新框架:Symfony 2。具体介绍见:http://www.symfony.com/。我刚搭建了Symfony 1.4.9的环境,实在不想在一个全新的框架上进行开发——虽然如此做对熟悉一个东西是很有好处的。

    (more…)

  • 重构狗屎皮:第一天

    今天开始重构狗屎皮。

    基本的框架是:后台机器人采用pMq编写的机器人进行采集,这个机器人是用Python编写的;由于我对Python以及基于Python的框架(我们之前用的是TG2)不是很熟悉,所以决定重新用Symofny改写。

    今天是第一天。主要是进行数据库的构建。

    解决了一个“小”问题,就是:Symfony在缺省时数据库所有文本字段采用的是拉丁编码,必须设置一下强迫其采用UTF8编码,代码如下:

    # File: config/database.yml
    all:
        doctrine:
            class: sfDoctrineDatabase
            param:
                dsn: mysql:host=localhost;dbname=go4pro
                username: root
                password:
                attributes:
                    default_table_charset: utf8
                    default_table_collate: utf8_general_ci

    最后三行紧要。

    今天还对样本数据进行了一些编写。用Symfony内置的机制进行数据填充还是很快很快的。

    比如我们可以这样编写一个comment.yml文件:

    # File data/fixtures/comment.yml
    G4pComment:
        first_comment:
            G4pArticle: first
            username: Dummy
            content: 好文章!
    <?php for($i=1;$i<=15;$i++): ??>;
        comment_<?php echo $i ??>:
            G4pArticle: first
            username: 访客<?php echo $i.n; ??>
            content: 我是路人<?php echo $i.n; ??>
    <?php endfor; ??>

    这样就可以一下子产生1+15个数据。YML文件是非常讲究格式的,必须注意书写时的缩进。

  • Going for Symfony | 第八天

    今天是五一劳动节,我也劳动了一把:很快的完成了任氏有无轩中另一个重要的模块:读书模块的建立。

    访问地址是:https://rsywx.net/reading

    有了前几天的基础,今天的编程速度非常的快。我有信心说我已经跨过了Symofny的学习曲线了……

  • Going for Symfony | 第七天

    在第七天,我终于完成了将任氏有无轩的最重要的部分:藏书管理部分迁移到了Symfony,并且是在应用环境。进行了一些小的修改就不说了。

    本来是要用Lucene进行索引编制的,但是我的应用实践表明,Lucene实在对中文支持很不好。所以,我只好放弃Lucene,而改用最原始select大法。

    (more…)

  • Going for Symfony | 第六天

    这是我对任氏有无轩改造的(第N个)第六天……

    我要完成的是至关重要的功能:加入全文搜索。今天的收获还算可以,还需要我进行更多实际数据的测试进行验证。

    (more…)

  • Symfony的一个大问题

    最近这段时间,没有继续我的任氏有无轩的改造,而是不务正业的搞了个小网络应用,地址在这里:http://www.bspmq.com

    (more…)

  • Going for Symfony | 第4.5天

    第四天的心得中,我留下了一个小问题:

    一个小bug:现在的情况是,只能用点击那个按钮的方式来提交新的tags,如果输入了一些tags然后用回车的话,会出错。这个问题我将留在日后解决。先让我得意一会吧……

    当时我认为这个问题很容易解决,因为我想到了至少两种解决方法:

    1. 在jQuery中截获回车,然后不加任何处理;
    2. action.class.php中进行进一步的操作;

    实践证明,第一种方法没有成功,因为我对js的掌握还是没有我对PHP的掌握来的深入。所以我集中在第二种方法。

    (more…)

  • Going for Symfony | 第四天

    抱歉,过了这么久才放出我第四天的进程:因为这一天的过程实在比较难,而结果却很有成就感。我完成了以下工作:

    1. 完成了某一本书的详细信息显示;
    2. 加入了AJAX的支持,可以由浏览者增加一本书的tag并更新到数据库中;

    (more…)

  • Going for Symfony | 第三天

    第三天没有什么特别的突破,只有两个改进:

    首先,是完成了页面。通过include_partial,我将各个小板块都独立了出来,并完成了原来的页面的样子:

    day-3

    其次,是修改了routing.yml,从而禁止了直接输入类似:http://…/books/11/edit 来修改书本信息的可能。如果用户试图这么做,会出现404错误。

  • Going for Symfony | 第二天

    第一天的过程中,完成了数据库建模,今天要实现前端的模块。在这个模块中我们将实现如下的效果(当然只是部分——因为数据库还没有完全建立起来):

    day-2

    (more…)