-
Notifications
You must be signed in to change notification settings - Fork 3
biohub.biobrick
shirley-wu edited this page Aug 5, 2017
·
21 revisions
register name: api:biobrick
Note: Biobrick只读,不可更改。如果需要加入更改功能以后再说。
serializer.data的fields:
- part_name
- sequence: DNA序列
- short_desc: 短描述
- description: 长描述,虽然有些biobrick的description比short_desc还短
- uses: 使用数
- urlset: 一个字典,包含三个keys: part, related_parts与gb_download。其中urlset['part']是biobrick在parts.igem.org官网的url。
- highlighted: 一个列表。在要求高亮的时候会包含一个字符串,表示高亮后的内容。
功能: 列出已有的biobricks。不知道这个功能有什么用,不想要可以去除。
url: /api/biobricks/
register name: api:biobrick:biobrick-list
method: get
参数:
- order: 可选,表示biobricks排列顺序。可选值为'part_name'(按照biobrick名字排序),'-uses'(按照uses降序排序)。默认值为'part_name'
返回格式: {
- count: biobricks个数
- next: 下一页
- previous: 前一页
- results: 一个列表,每一项均为serializer序列化后的data
}
功能: 通过pk(即part_id)检索某个biobrick,似乎更没有什么用的功能。
url: /api/biobrick//
register name: api:biobrick:biobrick-detail
method: get
参数: 没参数
返回格式: 同serializer
功能: 搜索。
- 可以对part_name、sequence进行严格搜索
- 可以对short_desc与description进行模糊搜索,并支持效果并不好的高亮
- 可以给定显示顺序
- 可以给出拼写建议
后端实现: 使用haystack框架与elasticsearch后端。原本使用whoosh,但whoosh太慢。后期可能会尝试其他后端
url: /api/biobrick/search/
register name: api:biobrick:biobrick-search
method: get
参数:
- order: 可选。默认为按照相关度排序。可选值为'part_name'与'-uses'
- q: 在short_desc与description中查询,支持高级查询语法
- part_name
- sequence
- highlight: 可选。如果提供该变量,无论值为什么都会进行高亮
返回格式: 类似list。唯一区别在于如果q拼写错误,response.data中会有suggestion域,推荐正确的拼写