`
hanqingwxf2008
  • 浏览: 51279 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论
文章列表
render和redirect的区别在于:     render 没有执行相对应的controller方法!而redirect_to 则重新执行controller方法,也就是说redirect_to 让浏览器去创建一个新的请求。     render 其参数是有效的(有重复提交问题),而redirect_to 其参数是重新请求的。

vim

i   insert模式 v  visual模式 ctrl+v visual+block模式     r  替换 d 删除 x  剪切 u 撤销       查找替换   :%s/a/b/gc                        全文替换 :'<,'>s/a/b/gc                     段落替换     vim  打开一个文件   对一个文件路径按GF 可以链接到这个文件中     文本全选: shift+v   gg  shift+G 文本缩进  shift+>        

mysql or 索引

mysql  中    select * from u where user_name =1 or user_email =2   用or链接   如果user_name  和 user_email 建立索引  mysql是会   忽略掉两者的索引     此时 可以用  union操作来  链接 条件     select * from u where user_name =1 union select * from u where  user_email =2  
  def has_href_not_XXX?(content)     content = content.dup     loop do       content.sub!(/href=(['"])([^'"]+)\1/, "")       if $2.blank?         return false       else         if (!$2[".XXX.com"])           return true         end       end     end   end

form_for && form_tag

    博客分类:
  • ruby
<% form_for @XX, :url => '', :html => {:id => ''} do |f| %> 生成的form 以什么方式提交   取决于@XX是  什么状态的对象   如果是new 则以post方式提交  如果是已存在的实例对象  则以put 方式提交   所以路由配置 method不要配死     而form_tag  则 都会以post方式提交

好吧,就这么写了

    博客分类:
  • ruby
以后写代码 就按这个思路来 先写 伪代码 再写 测试 最后写逻辑

not in & not exists

请注意not in 逻辑上不完全等同于not exists,如果你误用了not in,小心你的程序存在致命的BUG: 请看下面的例子: create table t1 (c1 number,c2 number); create table t2 (c1 number,c2 number); insert into t1 values (1,2); insert into t1 values (1,3); insert into t2 values (1,2); insert into t2 values (1,null); select * from t1 where c2 n ...
REST, Resources, and Rails   Before REST came I (and pretty much everyone else) never really knew where to put stuff. —Jonas Nicklas on the Ruby on Rails mailing list   Routing and CRUD 当你在routes.rb里这么写的时候: map.resources :auctions 你就已经创造了4个具名路由,实际上允许你访问7个action(index, create, show, update, ...
因此private和protected的在ruby当前和Java的定义有很大的区别: 1、在不同对象实例当中的作用域不同 Java当中,不管private还是protected的方法,都可以被同一个类别的其他对象实例调用; Ruby当中,private方法不能被同一个类别的其他对象实例调用; 2、在类继承关系当中的作用域不同 ruby当中,不管private还是protected方法,都可以被子类继承; Java当中,private方法不能被子类继承; 这种方法调用的差异,也许来自于不同的面向对象理念:Java的面向对象来自C++,强调类继承关系,所以方 ...
          具名域 和 匿名域  ,rails无法处理多个order子句和limit子句 ,因此请保证调用链中只使用一次order或limit            当保存更新一个对象时, 如果使用find_by_sql 查询出一个对象,必须取出包含id的字段.       在验证时有些方法可以跳过回调,请小心使用这些方法。 * decrement * decrement_counter * delete * delete_all * find_by_sql * increment * increment_counter * toggle* upda ...
如果:readonly 被设为 true 则不能将 find 方法返回的 ActiveRecord 对象再次存入数据库。 如果使用了:joins 或者:select 选项,那么得到的对象会被自动标记为:readonly。
  默认的主键为ID,我们可以如下来修改主键,       class LegacyBook < ActiveRecord::Base      self.primary_key = "isbn"     end      ActiveRecord会负责为你创建的每条记录新建主键值,他们是递增的整数,但不保证连续,然而,如果我们指定了主键字段,就必须同时负责将每条新记录的主键设为唯一的值,我们仍旧可以通过名为 id 的属性来设置主键值。也就是说,只要使用 ActiveRecord,主键字段在对象中的属性名称永远都是 id,primary_key=声明只是用于 ...
  ruby中 对真值的定义  非常简单 除了nil和false之外 所有的值被解释为true            如果要查询一个boolean型字段的状态,就必须在字段名的后面加上?   user=User.find_by_name("tom") if user.superuser?     ......... end     用这种方式访问对象的属性,ActiveRecord首先会查看字段的值,然后将数值0,字符才“0”、“f”、“false”、空字符串、nil 和常量false  都解释为false,其他值 解释为true 。
1、 将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn: // 192.168 . 1.1 / pro / domain 简写:svn co 2、 往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add * .php(添加当前目录下所有的php文件) 3、 将改动的文件提交到版本库 svn ...
http://hi.baidu.com/magiclin/blog/item/5cda0bec2c73fc2362d09f0f.html
Global site tag (gtag.js) - Google Analytics