- 浏览: 55692 次
- 来自: ...
最近访客 更多访客>>
文章列表
首先解释一下AJAX的工作原理,其实我都忘了,翻了些以前的笔记才想起来:
比如你提交一个form的时候,不想更新整个页面,只是想更新局部的页面,因为其他的页面内容没有改变,不需要重新载入,否则浪费时间和带宽。这时候就用到AJAX了。
你发送一个xhr request, (XMLhtmlrequest),服务器收到这种request之后,判断request.xhr?, 如果是,则不会返回一个页面给浏览器,而是会返回一段javascript代码给浏览器,浏览器收到这段代码,就执行这段代码,然后这个过程就完成了,就实现了局部更新的目的。而处理xhr请求的代码就放在了后缀为rjs文件中了。
ra ...
- 2009-05-21 18:39
- 浏览 717
- 评论(0)
如果一个model中含有时间字段,那么add a new object的时候,我们可以使用datetime_select helper method to render it as a list of drop down lists, 就是,年月日小时,分都显示成一个droplist,可以选择。
当然,并不是所有人都喜欢这种输入方式。如果用户可以通过文本的方式输入时间,岂不是更好?然后由我们的程序进行解析然后存储到数据库中。
这么做意味着我们显示出来的字段跟数据库中实际存储的字段不一致。我们可以通过虚拟属性来记录这个新的string字段。
首先修改一些view中的代码
<%form_ ...
- 2009-05-21 17:50
- 浏览 787
- 评论(0)
如果我们在irb中输入:
Time.now
=>Thu May 21 14:31:35 +0800 2009
我们看到这个格式一般不是我们要显示出来的格式,之所以以这种格式显示出来,是因为调用了Time对象的to_s方法,而to_s方法可以接收一些参数,如果没有参数,那么显示出来的就是默认的上面那种格式,我们可以通过参数改变格式:
Format Result
Task.first.due_at.to_s 2009-02-19 00:00:00 UTC
Task.first.due_at.to_s(:long) February 19, ...
- 2009-05-21 15:09
- 浏览 622
- 评论(0)
<title>ABCD</title>
这部分代码一般放在layout file中。其结果是所有的页面都使用相同的title, 这样不利于别人检索到你的网页。那么如何在不同的页面显示不同的title呢?
一.
我们先来看第一种方法,就是上一篇文章介绍的 ...
- 2009-05-21 12:12
- 浏览 1258
- 评论(0)
假设我们有一个application layout file, application.erb.html
然后有一个index.erb.html
当index页面render的时候,他会被放在layout页面里面。
但是,如果我们想根据template来定制layout显示的内容,我们该如何做?
比如说,我们想在显示index页面的时候,使用一个特定的css,解决的方法就是
使用content_for 这个helper method。
# <% content_for :head do %>
# <%= stylesheet_link_tag 'projects' ...
- 2009-05-21 10:26
- 浏览 922
- 评论(0)
有时候,你也许需要将一个数组中的元素根据某种规则进行分组。那么group_by方法就是很好的选择。
先来看下面的例子:
>> a = (1..20).to_a
=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
>> a.group_by { |num| num/5 }=> [[0, [1, 2, 3, 4]], [1, [5, 6, 7, 8, 9]], [2, [10, 11, 12, 13, 14]], [3, [15, 16, 17, 18, 19]], ...
- 2009-05-21 09:55
- 浏览 1103
- 评论(0)
这是数组的一个方法:
先来看下面的例子:
>> a = (1..12).to_a
=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
>> a.in_groups_of(4)
=> [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
>> a.in_groups_of(3)
=> [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
基本明白了这个方法的用法了。
但是如果a有10个元素呢,那 ...
- 2009-05-20 16:09
- 浏览 853
- 评论(0)