小子的博客

人生若如初见

Jbuilder & Rabl & Gon简单使用

这节介绍几个和json处理有关的gem(大部分的内容跟railscasts的差不多,在这里只是进行汇总和总结,方便查看)

用rails在默认情况下就能产生json

是这样的

app/controllers/articles_controller.rb
1
2
3
4
5
6
7
8
9
# GET /articles/1
# GET /articles/1.json
def show
  @article = Article.find(params[:id])
  respond_to do |format|
    format.html # new.html.erb
    format.json { render json: @article }
  end
end

Jquery Tags-input & Jquery Tag-it

标签大家肯定很熟悉,在文章中你可能会使用标签,你或许看过土豆视频的标签,或许看过京东商品的标签。这节我们在rails中分别使用tag-it和tags-input这两种关于标签的库,这两种库可以和Acts-as-taggable-on结合使用

1. tag-it

这个库要利用jquery和jquery ui这两种库

jquery在rails默认是开启的,现在来开启jquery ui这个库

Rails-settings源码分析

rails-settings

1. 数据库结构

var: string 键

value: text 值,存的是hash

target_id: integer 多态的id

target_type: string 多态的类

2. 源码文件结构

1
2
3
4
5
6
7
8
lib
├── rails-settings
│   ├── base.rb 定义了settings和settings=方法
│   ├── configuration.rb 操作has_settings的symbol列表和定义了default_settings
│   ├── scopes.rb  一些查询方法
│   ├── setting_object.rb 操作settings表
│   └── version.rb
└── rails-settings.rb