- 浏览: 76574 次
- 性别:
- 来自: 湖南
最新评论
-
cxh116:
<script>
//<![CDATA[
...
javascript test -
Hooopo:
<script>
var e = e || ...
javascript test -
Hooopo:
var e = e || event;
javascript test -
zj0713001:
LZ明白 if 肿么就不明白unless 话说我刚学的时候 ...
ruby unless的使用 -
cxh116:
genius_45 写道请问:学习Ruby, C 还那么重要吗 ...
Ruby Eigenclass详解
文章列表
引用
rake doc:rails #生成Rails API
rake doc:guides #生成Rails Guides
命令需要在rails 应用目录下运行
生成后,文档保存在应用的doc目录下
GEM版本降级
- 博客分类:
- Ruby and Rails
gem update --system ##默认更新gem为最新版本,在后面加上版本号,就可以更新到指定版本
比如:
引用gem update --system 1.5.3
代码先行
class Kitty
@class_ins_1 = 1
attr_accessor :ins_1, :ins_2
def initialize
@ins_1 = 11
end
class << Kitty
attr_accessor :class_ins_1, :class_ins_2
end
end
puts Kitty.class_ins_1
Kitty.class_ins_2 = 2
puts Kitty.class_ins_2
k = Kitty.new
puts k.in ...
学习用class << Object 这种方式定义类方法的时候,发现Ruby语法的绕口令,很好玩的.
class Kitty
class << self
puts "#{self.inspect} -- #{self.object_id}" #a点
def hello
puts "#{self.inspect} -- #{self.object_id}" #b点
puts "#{Kitty.inspect} -- #{Kitty.object_id}&qu ...
看代码
def hello
1.times do |i|
return 100
end
1000
end
puts hello
结果打印出来的是100,而不是1000
也就是代码块中的return 不止使用语句从迭代器中的代码块返回,而且使语句从返回到hello方法的调用
与Java相比, JAVA中 AOP 这个贵族化运用在 Ruby 中非常平民化.
Iteye的面试,第三关出题目要求写一Rails插件. 写插件的学习过程中,让我深深的体会到动态语言的伟大.
推荐学Ruby on Rails朋友也去写一个简单的插件,写它会让你学习到很多Ruby语法的基础东西.
主要有:
明白self关键词在不同的作用域的意思
require 语句
熟悉module,了解到ruby一些自带的回调方法,比如module的included
了解send include extend方法的意思
了解eval class_eval instance_eval alias_method ...
RubyMine 很不错,但有些源代码定位还是不准备.比如我要查看Post Model的post_path方法,就找不到在那里定义的...
找到很多方法都无效,最终决定用反射,直接查看方法参数.查看Method类的帮助文档,突然发现了source_location方法,让我眼前一亮,
在Post Controller,添加下面代码
puts method(:post_path).source_location
将会打印出源码文件所在位置和行数
最终结果:
debian6
ruby1.9.2 (没有装rvm,服务器个人觉得没有必要)
rails3.0.6
拿到vps,ssh连接上去.
第一步,初始化服务器环境
添加普通用户
把下面命令的mangege改成你要的用户名
引用adduser mangege
安装sudo
引用apt-get update
apt-get install sudo
编辑sudoers,把你新建的普通用户加入到sudo
引用vi /etc/sudoers
在 root ALL=(ALL) ALL 下面再加入一行 mangege ALL=(ALL) ALL
(注意用户名)
禁止ro ...
虽然alert方式不被推荐,但很多时候由不得我...
$.validator.setDefaults({
submitHandler: function() { alert("submitted!");return false; }
});
$().ready(function() {
// validate signup form on keyup and submit
$("#reg_form").validate({
rules: {
/* input name 有 . 时加上引号 */
'mem ...
在我多次重装系统,重装环境后,终于发现,之前写的文章http://mangege.iteye.com/blog/992571提到的你推测问题是由于应用服务器引起的.在VPS下,thin的反应速度太慢了,打开一个页面要2~3秒甚至更久,Passenger的速度很快,一点就开.看样子Passenger有针对VPS优化过
我只是测试的比较一下thin和Passenger,其它的应用服务器就不比较了,Passenger已经满足了我的需求.
VPS 环境:UBUNTU 10.04,Ruby 1.9.2(不一定要REE)
Passenger VPS下测试结果
引用Server Soft ...
从网上搜到的...了解一下Ruby的Socket编程
require "socket"
class IPMSG
IPMSG_PORT = 2425
VERSION = "1"
COMMAND = "32" #send msg
def initialize(user, port = IPMSG_PORT)
@user = user
@port = port
@sock = UDPSocket.new
end
def send(target, msg)
s = [ ...
web-app-theme 是一个用于快速开发Rails应用的后台模板.比Django的后台要灵活的多了.
web-app-theme有点小缺点,就是字段验证的消息没有显示的样式,只有FLASH消息显示的样式.
想到一个简单的解决方案,不用修改webp-ap-theme样式,就是把errors添加到flash,通过flash的样式来显示errors消息.
通过eval方法,用到了一点点元编程.一行代码就好了.比JAVA实现简单了N倍,具体请看代码
修改module ApplicationHelper,添加下面方法.
def add_errors_to_flash_now
mod ...
在网上买了一个256M的VPS,配置好环境后,发现网页打的速度慢的让人无法忍受,排除了网速问题,就从RUBY 方面找原因了.
首先测试是不是内存小导致运行缓慢.
测试环境:
物理机 P4 3.0的CPU,2G内存
虚拟机: VBOX,128M内存
系统:DEBIAN6
RUBY:ruby 1.9.2p188 (2011-03-28 revision 31204) [i686-linux]
Rails:Rails 3.0.6
Thin:thin 1.2.11
数据库:Sqlite3
用rails3快速的生成一项目,并添加两条数据
rails generate scaffo ...
原文出处:http://rubyforge.org/forum/message.php?msg_id=64873
book = Spreadsheet::Workbook.new
sheet = book.create_worksheet :name => "Test Sheet"
bold_heading = Spreadsheet::Format.new(:weight => :bold, :size => 14, :align => :merge)
data = "A TEST HEADING"
test_ro ...