如何添加样式到Trac

admin 提交于 星期一, 04/24/2017 - 09:28

在Trac项目目录里有个templates的目录,在里面创建site.html(这个文件不需要有完整的结构,如果为空,则Trac的排版不变,应该只是放差异的结构,具体机制不清楚),里面引用site/style.css。这个文件对应于项目目录里htdocs/style.css。在style.css里面添加样式即可。重启Trac。

参考:https://trac.edgewall.org/wiki/TracInterfaceCustomization

eGuideDog奖学金(第一期)

admin 提交于 星期二, 04/18/2017 - 08:51

为增加视障人士使用Linux的动力和乐趣,现开展一项奖学金计划。凡完成任务的视障人士均可申请,任务如下:

  1. 学习eGuideDog Linux入门教程
  2. 安装eGuideDog Linux
  3. 教程里有一章介绍怎样使用Linux邮件客户端的,里面提到一个邮件列表。向邮件列表发送一封向其他用户自我介绍的邮件,内容包括:个人的姓名或昵称(这个名字会在奖学金获奖名单中显示)、曾经就读过的特殊学校、目前的职业、安装eGuideDog Linux的环境(例如:是在什么Windows版本下用什么版本的虚拟机安装)。除此以外还可以添加任何想和其他Linux用户说的内容,例如一些使用体验心得之类。
  4. 任务完成后在支付宝添加 hgneng@163.com 为好友,备注说明谁申请领取奖学金。经审核符合资格后会通过支付宝发放奖学金。

 

注意:

Drupal 7数据库操作

admin 提交于 星期三, 04/12/2017 - 15:12

1. 通过db_query执行原生SQL语句

$ret = db_query('SELECT * FROM test_table  WHERE tid = :tid', array(':tid' => $tid);

db_query语句返回的是一个对象,但是这个对象可以通过foreach遍历,就好像$ret是一个数组一样遍历。其成员是对象。

 

foreach ($ret as $row) {

  echo $row->tid;

}

要注意的是,db_query语句返回的结果虽然可以项数组一样遍历,但只能遍历一次。其内部的实际逻辑是遍历的时候向数据库获取新一行数据,当数据获取完之后并不会重头再获取。

对于对象是怎样实现foreach操作的,可以参考:http://php.net/manual/en/language.oop5.iterations.php

标签

如何把生产环境的Discuz复制到本地

admin 提交于 星期二, 03/21/2017 - 16:10

首先,把生产环境的数据库导出并在本地导入。

然后,从git下载DiscuzX代码(假设路径为http://localhost/discuz/)

这个时候访问http://localhost/discuz/会跳转到install目录,这是因为没有复制生产环境的配置文件。下面Linux/Mac命令可把服务器(例子里的路径要根据各自情况修改)配置文件同步到本地:(Windows用户可用WinScp同步)

rsync -rv root@bbs.zrwh.org:/var/www/html/config/* ./

之后就可以访问 http://localhost/discuz/,但会报数据库连接错误。这是因为本地的MySQL没有创建和服务器一样的账号权限。我们可以选择修改配置文件或本地的MySQL账号密码。我选择了前者,因为修改MySQL账号密码会影响本地已有其它系统。但改配置要注意,不能把配置文件同步到生产环境。

接着,我们再刷新页面(http://localhost/discuz/)会看到./data/template访问错误。这是因为data目录没有写权限(Windows下可能不会遇到),使用下面命令修改:

标签