README.md in meta-api-0.0.2 vs README.md in meta-api-0.0.3
- old
+ new
@@ -15,19 +15,21 @@
## 安装
在 Gemfile 中添加:
```ruby
-gem 'meta-api', '~> 0.0.1' # Meta 框架处于快速开发阶段,引入时应尽量固定版本
+gem 'meta-api', '~> 0.0.3' # Meta 框架处于快速开发阶段,引入时应尽量固定版本
```
然后在 Ruby 代码中引用:
```ruby
require 'meta/api'
```
+> 或者可嵌入到 Rails 项目中使用,参见[为 Rails 项目带来参数验证效果](docs/Rails.md)。
+
## 快速上手
### 定义 API
通过继承 `Meta::Application` 来定义一个 API 模块。(PS:以下示例的运行依赖 `ActiveRecord`)
@@ -35,24 +37,24 @@
```ruby
class NotesAPI < Meta::Application
get '/notes' do
title '查看笔记列表'
status 200 do
- expose :notes, type: 'array', using: NoteEntity
+ expose :notes, type: 'array', ref: NoteEntity
end
action do
render :notes, Note.all
end
end
post '/notes' do
title '创建新的笔记'
params do
- param :note, type: 'object', using: NoteEntity
+ param :note, type: 'object', ref: NoteEntity
end
status 201 do
- expose :note, type: 'object', using: NoteEntity
+ expose :note, type: 'object', ref: NoteEntity
end
action do
note = Note.create!(params[:note])
response.status = 201
render :note, note, scope: 'full'
@@ -63,24 +65,24 @@
title '查看笔记'
params do
param :id, type: 'integer'
end
status 200 do
- expose :note, type: 'object', using: NoteEntity
+ expose :note, type: 'object', ref: NoteEntity
end
action do
note = Note.find(params[:id])
render :note, note, scope: 'full'
end
end
put '/notes/:id' do
title '更新笔记'
params do
- param :note, type: 'object', using: NoteEntity
+ param :note, type: 'object', ref: NoteEntity
end
status 200 do
- expose :note, type: 'object', using: NoteEntity
+ expose :note, type: 'object', ref: NoteEntity
end
action do
note = Note.find(params[:id])
note.update!(params[:note])
render :note, note, scope: 'full'