今天在项目里准备把管理功能移进后台系统,于是创建根据controller的examples创建了一个模块:
Modules Example:
`./script/generate controller ‘admin/credit_card’ suspend late_fee`
Credit card admin controller with URLs /admin/credit_card/suspend.
Controller: app/controllers/admin/credit_card_controller.rb
Views: app/views/admin/credit_card/debit.html.erb [...]
Helper: app/helpers/admin/credit_card_helper.rb
Test: test/functional/admin/credit_card_controller_test.rb
./script/generate controller 'admin/credit_card'
因为安全方面的问题,文章里的module名都用帮助实例里的名字代替。
我使用如上的方法创建了一个module以后,在浏览器里是直接不能访问的,于是又在routes.rb里添加路由映射的命名空间:
map.namespace :admin do |admin|
admin.resources :credit_card
end
这样做了以后就有一个奇怪的现象产生。
Continue Reading »
当我们面对网站项目里日益庞大的css,javascript文件,无论是为了二次开发还是浏览器解析,都应该优化他们的代码,但是优化并不意味着是简单的压缩或减小文件体积。条理清晰,运行效率高才是我们要的结果。那么有哪些手段能够我们的css代码呢?一起来看看下面的一些建议吧。
Continue Reading »
YUI Library(Yahoo!用户界面函数库)是Yahoo Developer Network(Yahoo!开发者网络)创建的一组使用JavaScript所制作出的工具和控制项组合,用来建立丰富且具有互动性,并且以DOM程式、DHTML和 Ajax等技术为基础的网站应用程序。 YUI函数库还包含了一些核心的CSS资源。 YUI函数库中的所有组件都基于BSD条款以开放原始码的形式公开发布,并且提供给所有人免费使用。

立即下载YUI 2.5.2版,包含完整的API文件,以及超过200个的丰富例子。
浏览器支持分级表:详细的描述了在开发YUI函数库时对于浏览器支援性的看法。浏览器支持分级表提供了一种清楚的方式,提供在开发互动介面时能够得知浏览器的支持性,并且能够依此而判断是否需要放弃支持某种版本的浏览器。
YUI速查表:能够快速查阅每一个组件的主要方法、属性和使用语法。当写程式遭遇到问题时,通常查阅速查表会比开启浏览器重新阅读文件和范例更快获得解答。而且速查表还能带给你一些前所未知的新发现。
这些一页的查询字典并没有包含全部的内容,但将它放在手边将会非常有用。 (速查表目前提供了所有YUI工具、绝大部分控制项以及YUI CSS基础的内容。)
以上内容基本都是出是官方的介绍,但对于想要做出好的网页表现又想偷懒的同时,YUI是一个很好的解决方案,比如我记得以前同事模仿iGoogle做拖动效果,写代码加调试几乎用了大半个月的时间才做的勉强相似,其实iGoogle就是Power by YUI :) ,如果当时就从这里开始,不知道会节省多少时间。
先介绍到这里,来看一则YUI运用的实例吧!
Rails默认创建的数据库是sqlite3的,我修改database.yml的配置为mysql以后,启动mongrel
mongrel_rails start -p 12001 -d -e development -P log/mongrel.pid
服务都一直无法启动,而且而且无论怎么修改都是,查看mongrel的日志文件发现总是出现如下错误:
/usr/lib/ruby/1.8/yaml.rb:133:in `load‘: syntax error on line x, col x: ` 错误的配置节点名’ (ArgumentError) …
但是出现错误的地方在检查过后确实都没任何问题,最后改的只剩development的最基础配置问题依旧,发现问题竟然在密码,我是使用cpanel的Password Generator自动生成的密码,密码最后的一个特殊符号引发了整个错误,看来这是database.yml的内部符号.
Tip:自己写database.yml的时候要一定要使用缩进的结构。
在主机上安装了Roby on Rails的sqlite3的Gem之后,在创建数据库的时候出现了这个信息,
这是由于目录权限问题造成的错误。
来自kain的解决方法:
[doskoi@localhost :/usr/local/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.2]$ sudo find . -perm 0662 -exec chmod 664 {} \;