随笔分类 -  ruby/rails

Ruby map, collect and select
摘要:作为ruby的新手,我经常对Array的enumerators的三种方法感到困惑: map, collect 和 select。让我们通过一些例子来解决这个困惑。list = (1..10).to_a p listp list.collect { |i| i >= 3 && i = 3 && i = 3 && i <= 7 }结果所有的方法都有相似之处就是都用了一个block 参数,map和collect方法都返回了一个数组中的item通过计算返回的值,而select方法则返回了通过迭代数组中的item计算出的结果为true的值。这个 阅读全文
posted @ 2014-01-05 18:40 小海少 阅读(2174) 评论(0) 推荐(0)
rails simple_captcha 验证码实现
摘要:用到的gem有 gem "galetahub-simple_captcha", :require => "simple_captcha" gem "mini_magick" 执行bundle 重写devise的controller方法 devise_for :users, :controllers => { :sessions => "devise_hack/sessions",:registrations => "devise_hack/registrations" } 阅读全文
posted @ 2013-08-13 10:31 小海少 阅读(1227) 评论(0) 推荐(0)
极光推送API简易rails版本
摘要:研究了下极光推送写了个rails版本封装http接口的文件,上代码# -*- encoding : utf-8 -*-require 'digest/md5'require 'json'require 'rest_client'module NotificationPush def push_message(opts ={}) sendno = opts[:sendno] || 1 app_key = opts[:app_key] || '.....' receiver_type = opts[:receiver_type] || 阅读全文
posted @ 2013-06-28 17:59 小海少 阅读(514) 评论(0) 推荐(0)
rake db:migrate出错
摘要:今天遇到一个比较奇葩的问题,当执行rake db:migrate 出现如下错误: rake aborted! Mysql2::Error: Tablespace for table 'greentea_development.schema_migrations' exists. Please DISCARD the tablespace before IMPORT.: CREATE TABLEschema_migrations(versionvarchar(255) NOT NULL) ENGINE=InnoDB 之后我想将数据库中的表删掉试试看,到mysql中执行: drop 阅读全文
posted @ 2013-06-19 15:27 小海少 阅读(787) 评论(0) 推荐(0)
rails 链接到其他页面和资源
摘要:引用外部资源到当前模板中,最常用的方法就是link_to了,该方法创建了指向应用程序其他行为的超链接。 基础:<%= link_to 'add comment', new_comments_path %> 解释:第一个参数是显示针对该链接的内容,第二个是指向链接目标的字符串或散列。第三个参数是所生产的html属性<%= link_to 'delete', product_path(@product), {:class => 'dangerous', :method => 'delete' %>b 阅读全文
posted @ 2013-05-07 20:04 小海少 阅读(366) 评论(0) 推荐(0)
rails 上传附件
摘要:今天做了个上传附件的功能,记录一下 用的gemgem 'carrierwave'gem 'rmagick', '2.13.2'gem 'mime-types' 关于这些gem都是什么作用这里就不做解释了,github中有介绍。执行bundle,期间会出现一些问题,install rmagick的时候会报错,原因貌似版本的问题。我的系统是ubuntu 12.0.4,解决方法1、sudo apt-get install libmagickwand-dev2、sudo gem install rmagick 直接上代码吧,其实上传附件的 阅读全文
posted @ 2013-05-07 18:40 小海少 阅读(730) 评论(0) 推荐(0)
rails 在view中引用关联model值
摘要:今天遇到一个问题。情景是这样的,有一张表invite和一张group表。group跟invite是一对多关系即 group.rb has_many :invitesinvite.rb belongs_to :group 在创建invite的时候需要同时添加其属于那个group,这是我就蛋疼了。于是上网找资料,从afly中那边获知了fields_for这么一个帮助程序。 在invite的new.html.erb中如下写 <%= form_for(@invite) do |f| %> <div class="field"> 发送给<%= f... 阅读全文
posted @ 2013-04-26 22:05 小海少 阅读(236) 评论(0) 推荐(0)
rvm的使用
摘要:作为刚刚学习rails的小白,第一次在ubuntu下安装rails的开发环境。发生很多蛋疼的事,多亏了众多rails前辈的指点,当然了还有afly的指点,总算解决了我遇到的奇葩问题。这里做个记录。 什么是rvm? rvm是一个命令行工具,可以提供一个便捷的多版本ruby环境的管理和切换。关于rvm的介绍,ruby-china有篇blog写的很清楚。http://ruby-china.org/wiki/rvm-guide 这里我只介绍我遇到的问题。第一个问题是我在执行rails new projectname时报出的错误:[BUG] Segmentation fault ruby 1.8... 阅读全文
posted @ 2013-04-18 21:24 小海少 阅读(696) 评论(0) 推荐(0)
rails 开发之路 记错本一
摘要:今天在学习《应用rails进行敏捷web开发》,跟着书上depot的例子写代码过程中遇到了一个错误。因为刚刚接触rails,所以不太明白到底是哪里出了错误。于是,我果断将问题贴在了Ruby China得到了Ruby China第一位会员也就是管理员的指导。。。非常感激。。。在这里贴出解决方案。当然了,如果有看过这本书的看客估计能够看懂我写的是什么。 问题情景:往购物车里面添加商品,如果购物车不存在则创建一个购物车,如果已经存在则将商品直接加入购物车中。若买同样的商品多个,利用quantity计数。结果却是如果购物车中已经存在这个商品了,再点击加入购物车就会报如下错误:NoMethodEr... 阅读全文
posted @ 2013-03-19 23:38 小海少 阅读(247) 评论(0) 推荐(0)
ruby变量与运算符
摘要:变量 引用:变量中保存的是指向某个对象的引用,而不是对象或者数值本身,这意味着存在着多个变量指向同一个对象的可能性。 指向对象a的引用被赋值到变量b中,这就产生了两个变量指向同一个对象的情况。如果通过变量b改变了对象的状态,那么通过对象a的引用访问该对象时,也会看到相同的改变。考虑: 在调用方法时,传递给方法的变量和被调用方法的局部变量都指向同一个对象的情况。def describe(name) puts "this is a #{name}" name[2] = ?p puts "this is a #{name}"endCATTLE = " 阅读全文
posted @ 2013-03-19 17:55 小海少 阅读(494) 评论(0) 推荐(0)