Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
5a8c65b5
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
5a8c65b5
编写于
12月 12, 2015
作者:
S
Stan Hu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add API support for looking up a user by username
Needed to support Huboard
上级
1a23af48
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
29 addition
and
5 deletion
+29
-5
CHANGELOG
CHANGELOG
+1
-0
doc/api/users.md
doc/api/users.md
+11
-1
lib/api/users.rb
lib/api/users.rb
+10
-4
spec/requests/api/users_spec.rb
spec/requests/api/users_spec.rb
+7
-0
未找到文件。
CHANGELOG
浏览文件 @
5a8c65b5
...
...
@@ -4,6 +4,7 @@ v 8.4.0 (unreleased)
- Fix Error 500 when doing a search in dashboard before visiting any project (Stan Hu)
- Implement new UI for group page
- Implement search inside emoji picker
- Add API support for looking up a user by username (Stan Hu)
- Add project permissions to all project API endpoints (Stan Hu)
v 8.3.1 (unreleased)
...
...
doc/api/users.md
浏览文件 @
5a8c65b5
...
...
@@ -90,7 +90,17 @@ GET /users
You can search for users by email or username with:
`/users?search=John`
Also see
`def search query`
in
`app/models/user.rb`
.
In addition, you can lookup users by username:
```
GET /users?username=:username
```
For example:
```
GET /users?username=jack_smith
```
## Single user
...
...
lib/api/users.rb
浏览文件 @
5a8c65b5
...
...
@@ -8,11 +8,17 @@ module API
#
# Example Request:
# GET /users
# GET /users?search=Admin
# GET /users?username=root
get
do
@users
=
User
.
all
@users
=
@users
.
active
if
params
[
:active
].
present?
@users
=
@users
.
search
(
params
[
:search
])
if
params
[
:search
].
present?
@users
=
paginate
@users
if
params
[
:username
].
present?
@users
=
User
.
where
(
username:
params
[
:username
])
else
@users
=
User
.
all
@users
=
@users
.
active
if
params
[
:active
].
present?
@users
=
@users
.
search
(
params
[
:search
])
if
params
[
:search
].
present?
@users
=
paginate
@users
end
if
current_user
.
is_admin?
present
@users
,
with:
Entities
::
UserFull
...
...
spec/requests/api/users_spec.rb
浏览文件 @
5a8c65b5
...
...
@@ -27,6 +27,13 @@ describe API::API, api: true do
user
[
'username'
]
==
username
end
[
'username'
]).
to
eq
(
username
)
end
it
"should return one user"
do
get
api
(
"/users?username=
#{
omniauth_user
.
username
}
"
,
user
)
expect
(
response
.
status
).
to
eq
(
200
)
expect
(
json_response
).
to
be_an
Array
expect
(
json_response
.
first
[
'username'
]).
to
eq
(
omniauth_user
.
username
)
end
end
context
"when admin"
do
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录