- 浏览: 21693 次
- 性别:
- 来自: 北京
最新评论
文章列表
有一个小需求,需要一个脚本将excel文件导入数据库对应字段。
正好可以练习一下task,不过首先先查查有没有什么好gem可以利用下(原谅我这么懒)
找到一个'roo' 回到gemfile中发现项目中已经包含了这个gem,恩看样子大家都在用,查看了一下用法还是很简单,非常好用。
# excel
gem 'roo', '~> 2.3.2', require: false
在 gemfile中添加上这个gem
然后创建一个新的rake任务,就可以开始我们的小任务了
namespace :v5_8_5 ...
rails数据库操作
- 博客分类:
- ruby
前段时间遇到的一个问题,在这里记录下来。
需求:批量的将表A中的status 创建 到表B中 主键为id
例:
表offers id status --> 表offer_scores id offer_id status
1 online 1
2 offline ...
执行方法
method execution
调用方法时,Ruby要做两件事:首先找到这个方法,然后执行这个方法。到目前为止,我们只学会了如何找到这个方法,接下来看看如何执行方法。
假设我们自己就是Ruby解释器,现在调用了一个名叫my_method的方法,我们先找到方法,发现该方法定义如下:
def my_method
temp = @x + 1
my_other_method(temp)
end
为了执行这个方法,需要知道两个地方。 首先,实例变量@x属于那个对 ...
调用方法时发生了什么?
What happens when you call a method?
调用方法时Ruby会做两件事:
(1)找到这个方法,这个过程成为方法查找。
(2)执行这个方法,为了做到这点,ruby要用到一个称为self ...
目标:建立一个存放电影名和影评的数据库,因此决定创建一个简单的代码库,用于在数据库中实现对象的持久化。
第一次尝试:编写一个代码库,把数据库中的每个表映射到一个类中,同时把每条记录映射到对象中,每当创建一个对象或访问它的属性时,这个对象就会产生一条SQL语句并发送给数据库。所有的这些功能都封装在一个类里面。
classs Entity
attr_reader :table, :ident
def initialize(table, ident)
@table = table
@ident = ident
D ...
angular js 添加功能
- 博客分类:
- java script
这次我们要添加一个版本更新功能在页面上输入版本号和连接点击按钮将版本信息提交到数据库中
要求每次提交都会覆盖之前的提交
<!--StartFragment--> <!--EndFragment-->
首先建立一个简单的页面 version_uodate.html.slim
.modal-header.pts.pbs
.modal-title
strong.mrh
| 版本更新 - (用于 iOS 端自动升级)
.modal-body
input.form-control[
ng-model= ...
<!--StartFragment--> <!--EndFragment-->
以前 遇到的问题
Can 't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock '(2) ";
首先先检查是不是mysqlserver没有启动
也有可能是你的mysql.sock 文件不存在了,
可能是被你不小心删除了,
连接localhost通常通过一个Unix域套接字文件进行,一般是/tmp/mysql.sock。如果套接字文 ...
ruby 类和类方法
- 博客分类:
- ruby
Ruby类变量和类方法
类变量被类的所有对象所共享,它与类方法相关联,对一个给定的类来说,类变量只存在一份拷贝。类变量由两个@符开头,例如@@count。与全局变量和实例变量不同,类变量在使用之前必须被初始化。通常,初始化就是在类定义中的简单赋值。
例如,我们的点唱机可能希望记录每首歌被播放的次数。这个数目可能是Song对象的一个实例变量。当一首歌被播放时,实例中的值增加。但是,假如我们还想要了解下一共播放了多少首歌。通过搜索所有Song对象并累加它们的播放次数,或者冒天下之大不韪使用全局变量来完成统计;或者,让我们使用类变量。
class Song
@@plays = ...
1 <!doctype html>
2 <html ng-app="MyModule">
3 <head>
4 <meta charset="utf-8">
5 </head>
6 <body>
7 <div ng-controller="HelloAngular">
8 <p>{{greeting.text}},Angular</p>
9 </div>
10 </body>
11 ...
angular js
- 博客分类:
- ruby
- java script
最近开始接触angular sj ui router 由于不太懂 也是踩了不少坑
在这里记录 已被后期 review
首先是mac 配置 rails 时报错
/Users/xiaoyu/.rvm/gems/ruby-2.2.0@baozheng/gems/json-1.8.2/lib/json/ext/parser.bundle: [BUG] Segmentation fault at 0x00000000000440
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-darwin14]
-- C ...
ruby 运算符表达式
- 博客分类:
- ruby
Ruby 提供了基本的运算符集(如+, -, *, / 等等) ,也提供了及格独特的运算符.
实际上,Ruby 中的许多运算符是由方法调用来实现的, 例如, 当你执行 a*b+c时,实际上你是请求 a 对象执行方法 * ,传入参数是 b ,然后请求返回的结果对象执行 + 方法 , 传入的参数是 c ,这等价于:
(a.*(b)).+(c)
因为任何东西都是对象, 而且你可以重新定义实例方法, 所以你可以重新定义任何不满足你需求的基本算术方法.
class Fixnum
alias old_plus + ...
刚开始学ruby 最近在用ruby on rails 框架做一个简单的小网页 ,最简单的就是 注册和登录问题了 ,看似简单的功能可能对于像我这样的新手也会能迷茫,还好网上有许多的开源资料供我们学习.
首先是注册 在我们的view中建立注册页面 sinup.html.erb,然后在建立相对应的 控制器 和 路由 以及 数据库表单
rails g controller users signup
rails g model user name:string email:string password_digest:string
密码的字段 这样子是进行 ...
在ruby on rails 编程中 难免会遇到问题,有些问题需要一步一步的调试才能解决,这里记录一下rails的常用的调试方法已被后期的使用
断点
断点设置在何处终止执行代码。调试器会在断点设定行调用。
断点可以使用 break 命令(缩写形式为 b)动态添加。设置断点有三种方式:
break line:在当前源码文件的第
rails 静态网页 续
- 博客分类:
- ruby
上一篇的网页 虽然体现了基本的功能 但是它还不能算是一个网页,下面我们继续来做,看视频学习虽然好但是特点就是有的东西当时记住了但是过一段时间会忘记,在这里记下笔记以便于以后的使用把。 下面就在网页的主页中添加一个图片:
<body>
+ <img src="images/home-banner-bg.jpg" alt="home-banner"> </body>
但是呢 这样子页面在缩进以后会变得很难看,下面解决这个问题
创建一个插件库 专门的放置这些我们用到的插件public/js/目录
wget h ...
rails 静态网页
- 博客分类:
- ruby
在 做程序的时候边做别学习了 rails ,这个框架想得好用 但是对于新手 在学习的时候还需要注意许多问题。使用的是rubymine7.1工具。这里整理的是在 好多视频网 上学习的,作者是peter,都说最好的崇拜就是模仿了,现在新手的我们可以在模仿中学习 rails 是用来做 web 应用的,功能多,使用的技术手段也多。在真正着手学习 rails 之前,建议你可以多多动手做一些静态网页,也就是多写写三种代码 html css 和 javascript ,然后再来接触 rails 程序,会发现其中一部分知识你已经清楚了,就不会因为一下子暴露在太多知识点之下而感到恐怖了。
首先写下标准的h5网 ...