麦田守望者's profile异想空间PhotosBlogLists Tools Help

Blog


    5/9/2009

    在基于Debian的Linux中安装OpenOffice.org 3.1.0

    我在自己的Debian 5.0 (lenny)中成功安装了OpenOffice.org 3.1.0,步骤简单,在这里与大家分享。

    1. 下载OpenOffice.org 3.1.0。下载地址:http://download.openoffice.org/other.html#en-US
    2. 删除系统中已经存在的OpenOffice。使用命令:sudo apt-get remove openoffice*。留意:不要落下openoffice后面的星号。
    3. 解压缩下载后的文件OOo_3.1.0_LinuxIntel_install_en-US_deb.tar.gz,并进入解压后的目录OOO310_m11_native_packed-4_en-US.9399/DEBS
    4. 安装目录中的所有deb包,使用命令:sudo dpkg -i *.deb
    5. 进入OOO310_m11_native_packed-4_en-US.9399/DEBS/desktop-integration,同样使用dpkg命令安装该目录中唯一的deb包。使用命令:sudo dpkg -i openoffice.org3.1-debian-menus_3.1-9393_all.deb

    如果一切顺利,到这已经可以使用新版本的OpenOffice了。

    在安装新版本OpenOffice之前,我一直使用2.4.2版本,并且Java环境运行良好。由于每台计算机几乎不可能有完全一致的系统环境,因此我不确保上述步骤在您的系统中100%运行无误。仅供参考。

    另外,可以参考一篇图文并茂地讲解OpenOffice的文章(英文)。

    5/5/2009

    理解Browser View之多适配器

    视图组件是命名的多适配器。其作用于的对象是HTTP Request对象和提供某个特定接口的对象实例。在视图组件的configure.zcml文件中声明page的时候,page元素就描述了这一概念。例如:

    <browser:page
      for="..interface.IReport"
      class="report_view.py"
      name="view"
      template="report_view.pt"
      permission="zope2.View"
    />

    属性name指出,我们声明了一个名字叫做view的视图。for指出只有当请求一个提供了IReport接口的对象的时候,才会调用这个视图。当然,发出请求的用户必须具有permission属性指定的权限才行。

    用编程方式获得这个视图对象,能够更直观地体会到多适配器的概念:

    from zope.component import getMultiAdapter
    from zope.publisher.browser import TestRequest
    # 假设该Report类实现了IReport接口
    from myproject import Report

    report = Report()
    request = TestRequest()
    view = getMultiAdapter((report, request), name=u"view")
    view()



    cctv.com与IE结下因缘

    如果想在cctv.com上看直播,那么必须安装Windows和IE。cctv.com剥夺了所有不用IE和Windows的人看视频的权力。