用UBUNTU桌面版挺长时间了,配置VPN也很久了,但从来没有连接成功过。
昨天因为要查资料需要翻越长城,所以找了一下ubuntu VPN客户端的资料,想找个客户端来上网,结果找到的资料都是使用内置的PPTP客户端就成了。
再找资料,发现,我不能启动的原因可能是:
- 要点上高级选项(Advance),选择Use-Point-To-Point-Encryption(MPPE)。
Submitted by gouki on 2010, November 24, 9:41 AM
用UBUNTU桌面版挺长时间了,配置VPN也很久了,但从来没有连接成功过。
昨天因为要查资料需要翻越长城,所以找了一下ubuntu VPN客户端的资料,想找个客户端来上网,结果找到的资料都是使用内置的PPTP客户端就成了。
再找资料,发现,我不能启动的原因可能是:
Submitted by gouki on 2010, November 23, 9:01 PM
续
今天我讲两件事,都是关于插件的,1、minify(@hightman的EClientScript) ,2、swfupload
1、EclientScript,这是hightman开发的插件,可以将要发布的css和JS进行合并,方便WEB开发。关于 clientScript,可以查看官方的guide,在性能优化这一节有介绍。但官方的手册上也说了,官方的scriptmap还是需要自己合并。而 eclientScript则实现了这样的功能了。一些使用方法我就不多了,我只说一些存在的问题,直接用代码说,我不说啥了:
$baseUrl 这段我遇到的问题最多,开始的时候,我用的是Yii::app()->module->_assetUrl;,事实上我发现这样可以成功,但 生成到assets目录里后,文件就再也不变了(无论你怎么更改原始目录中的文件,assets里的文件都不会更改)。
最后,我是直接把目录扔到了assets的目录里。然后手动设置路径 ,由EclientScript来生成压缩后的css和script文件。(如果需要发布那就必须要用到assetManage)
之所以把目录扔到assets里,是因为我需要单独把assets目录最后用独立域名发布,【关于用独立域名发布,已经建议了hightman更新了,他也答应会更新】
我对eclientscript第二个更新是在输出的URL上加上了filemtime的时间戳。以保证用户可以下载到最新的css和script。
2、swfupload。我是准备把neatpic用Yii重写,而且很多人都想要文件上传功能,但自带的上传功能也只有2M(大多数情况下只有2M)。 在实际使用下来,觉得还成(因为还没有真正测试 phpsession的那个问题,即FF和IE的sessionId的问题)。
swfupload插件,居然把文件分成两个压缩包,没想通。。。如果只下载一个可是不行的哦。所幸,官方把测试用例还是写的较详细(对于flash上的 文字,可以通过widget的参数修改,handlers.js里面是一些completed的一些方式,建议根据自己的需要修改。)
后记:我是邀请了@walkerlee,想让他分享一下心得。他是答应了,所以可以考虑催他了
Submitted by gouki on 2010, November 22, 10:13 PM
我一直想要苹果,但是,家里的财政大权不是我能管的。又想买一个黑苹果吧,但财政大臣那边还是不同意,认为买一个假玩意没意思。
虽然我一直想搞台笔记本,但目前好象还没有准备好,上级领导不批啊,所以看到素包子这篇文章就鸡动了一下。。。
素包子找了一些资料,大多不是介绍的最新的vmware7装最新的macos x,搜到了一个不错的安装介绍,参考着做完全没问题,而且很简单,感谢作者刘洪志和电脑报。5分钟搞定配置过程,接下来就是等待自动安装和重启了。
貌似可以升级到10.6.4,做了个snapshot,更新去了,一共700M左右。
(其中使用darwin.iso启动进行安装的步骤可以省略,可以直接使用OSXPCBETA_ArcticFox.10.6.3.iso启动安装。)
想偷懒并且对版本要求不高的同学可以下premade的vmware镜像,直接使用,大小10G,见BT种子,用迅雷离线下载瞬间完成,满水管下载。
原文在:http://baoz.net/install-macos-x-snow-leopard-10-6-3-in-vmware-7/
好象主要是那两张图:
Submitted by gouki on 2010, November 21, 11:05 PM
用yii进行开发的时候,不可避免的就会使用其他的插件,当然也需要自己来为他作扩展,所以,Yii的这一章就一定要看了(http://www.yiiframework.com/doc/guide/1.1/zh_cn/extension.create)。
官方介绍了这些:
Submitted by gouki on 2010, November 20, 8:16 PM
续
1、group by 的时候 count,这个字段默认是取不到的。即
如果是上述代码,那么sql是对的,但永远取不到cnt这个属性值的,因为show columns的时候,没有cnt这个field,所以它永远不会存在于attributes这个变量里的。那么,怎么打印出这个cnt呢?官方也没有这样的介绍,不过搜索一下论坛,还是有答案的,比如有人就反问曾经一个提问者,did you have a public variable named ‘cnt’?,看到这个反问,我立刻到xxx类里加了一行 public $cnt,然后在获取结果后,用$reuslt->cnt就得到值了。。
后记,其实昨天bobby在测试的时候发现,如果映射到一个存在的字段也可以的。比如cid存在的情况下,count(*) as cid,也可以取到值 ,只是这样会让人很迷惘
2、widget,widget建立起来还算是比较方便的。比如我建一下如下的文件,LinksWidget.php,扔到components目录下,
内容如下:
如果在这里面用上了 $this->render('links');那么这个render调用的模版和默认的模版无关,它是widget专用的,当然方法都类似。只要你在Widget文件同目录下建一个views文件夹,把render调用的模版扔进去就OK了。(其实,路径可以通过$this->getViewPath()来获取,以便测试。。)
注:widget比较方便,比如说我现在有N个modules,但有一些内容是公用的,我又不想每个程序都写。当然widget是最方便的喽?举例:友情链接。。。。多方便呀
3、模版。。官方的Extenstion中有一些关于smarty的,但如果真的用的不多的话,自带的prado的viewrender就已经很简化了。比如我们常用的<?php echo $xxx ; ?>简化成了 <%= $xxx; %>,如果是<?php if(xxx){ xxx } ?>也可以用<% if():><% xxx ;%><% endif ;%>这样类似的方式来处理。。简化了好多,而且又和PHP语法非常相似。(可以看一下官方手册,介绍的较多。)