add: user pinned projects
This commit is contained in:
		
							parent
							
								
									422fd35f1e
								
							
						
					
					
						commit
						ea79772bd2
					
				| 
						 | 
				
			
			@ -0,0 +1,27 @@
 | 
			
		|||
class Users::IsPinnedProjectsController < Users::BaseController 
 | 
			
		||||
  before_action :private_user_resources!, only: [:pin]
 | 
			
		||||
  def index 
 | 
			
		||||
    @is_pinned_projects = observed_user.is_pinned_projects.includes(:project_category, :project_language, :repository).order(position: :desc)
 | 
			
		||||
    @is_pinned_projects = kaminari_paginate(@is_pinned_projects)
 | 
			
		||||
  end 
 | 
			
		||||
  
 | 
			
		||||
  def pin 
 | 
			
		||||
    observed_user.is_pinned_project_ids = is_pinned_project_ids
 | 
			
		||||
    render_ok
 | 
			
		||||
  rescue ActiveRecord::RecordNotFound => e
 | 
			
		||||
    render_not_found
 | 
			
		||||
  rescue Exception => e
 | 
			
		||||
    uid_logger_error(e.message)
 | 
			
		||||
    tip_exception(e.message)
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  private 
 | 
			
		||||
  def is_pinned_project_ids 
 | 
			
		||||
    if params[:is_pinned_project_ids].present?
 | 
			
		||||
      return params[:is_pinned_project_ids].select{|id| observed_user.full_member_projects.pluck(:id).include?(id.to_i) }
 | 
			
		||||
    end
 | 
			
		||||
    if params[:is_pinned_project_id].present?
 | 
			
		||||
      return observed_user.is_pinned_project_ids.include?(params[:is_pinned_project_id].to_i) ? observed_user.is_pinned_project_ids : observed_user.is_pinned_project_ids.push(params[:is_pinned_project_id].to_i)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
<!--
 | 
			
		||||
 * @Date: 2021-03-01 10:35:21
 | 
			
		||||
 * @LastEditors: viletyy
 | 
			
		||||
 * @LastEditTime: 2021-05-27 10:27:14
 | 
			
		||||
 * @LastEditTime: 2021-05-27 14:22:52
 | 
			
		||||
 * @FilePath: /forgeplus/app/docs/slate/source/includes/_users.md
 | 
			
		||||
-->
 | 
			
		||||
# Users
 | 
			
		||||
| 
						 | 
				
			
			@ -47,6 +47,135 @@ await octokit.request('GET /api/users/me.json')
 | 
			
		|||
  Success Data.
 | 
			
		||||
</aside>
 | 
			
		||||
 | 
			
		||||
## 获取用户星标项目
 | 
			
		||||
获取用户星标项目
 | 
			
		||||
 | 
			
		||||
> 示例:
 | 
			
		||||
 | 
			
		||||
```shell
 | 
			
		||||
curl -X GET http://localhost:3000/api/users/yystopf/is_pinned_projects.json
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
```javascript
 | 
			
		||||
await octokit.request('GET /api/users/:login/is_pinned_projects.json')
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### HTTP 请求
 | 
			
		||||
`GET api/users/:login/is_pinned_projects.json`
 | 
			
		||||
 | 
			
		||||
### 返回字段说明:
 | 
			
		||||
参数  | 类型 | 字段说明
 | 
			
		||||
--------- | ----------- | -----------
 | 
			
		||||
|total_count       |int   |星标项目数量 |
 | 
			
		||||
|identifier                       |string   |项目标识   |
 | 
			
		||||
|name                             |string   |项目名称   |
 | 
			
		||||
|description                      |string   |项目描述   |
 | 
			
		||||
|visits                           |int      |项目访问数量|
 | 
			
		||||
|praises_count                    |int      |项目点赞数量|
 | 
			
		||||
|watchers_count                   |int      |项目关注数量|
 | 
			
		||||
|issues_count                     |int      |项目issue数量|
 | 
			
		||||
|pull_requests_count              |int      |项目合并请求数量|
 | 
			
		||||
|forked_count                     |int      |项目复刻数量|
 | 
			
		||||
|is_public                        |bool     |项目是否公开|
 | 
			
		||||
|mirror_url                       |string   |镜像地址|
 | 
			
		||||
|type                             |int      |项目类型 0 普通项目 1 普通镜像项目 2 同步镜像项目|
 | 
			
		||||
|time_ago                         |string   |上次更新时间|
 | 
			
		||||
|open_devops                      |int      |是否开启devops|
 | 
			
		||||
|forked_from_project_id           |int      |fork项目id|
 | 
			
		||||
|platform                         |string   |项目平台|
 | 
			
		||||
|author.name                      |string   |项目拥有者名称|
 | 
			
		||||
|author.type                      |string   |项目拥有者类型|
 | 
			
		||||
|author.login                     |string   |项目拥有者用户名|
 | 
			
		||||
|author.image_url                 |string   |项目拥有者头像|
 | 
			
		||||
|category.name                    |string   |项目分类名称|
 | 
			
		||||
|language.name                    |string   |项目语言名称|
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
> 返回的JSON示例:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
{
 | 
			
		||||
    "total_count": 1,
 | 
			
		||||
    "projects": [
 | 
			
		||||
        {
 | 
			
		||||
            "id": 89,
 | 
			
		||||
            "repo_id": 89,
 | 
			
		||||
            "identifier": "monkey",
 | 
			
		||||
            "name": "boke",
 | 
			
		||||
            "description": "dkkd",
 | 
			
		||||
            "visits": 4,
 | 
			
		||||
            "praises_count": 0,
 | 
			
		||||
            "watchers_count": 0,
 | 
			
		||||
            "issues_count": 0,
 | 
			
		||||
            "pull_requests_count": 0,
 | 
			
		||||
            "forked_count": 0,
 | 
			
		||||
            "is_public": true,
 | 
			
		||||
            "mirror_url": "https://github.com/viletyy/monkey.git",
 | 
			
		||||
            "type": 1,
 | 
			
		||||
            "last_update_time": 1619685144,
 | 
			
		||||
            "time_ago": "27天前",
 | 
			
		||||
            "forked_from_project_id": null,
 | 
			
		||||
            "open_devops": false,
 | 
			
		||||
            "platform": "forge",
 | 
			
		||||
            "author": {
 | 
			
		||||
                "name": "测试组织",
 | 
			
		||||
                "type": "Organization",
 | 
			
		||||
                "login": "ceshi_org",
 | 
			
		||||
                "image_url": "images/avatars/Organization/9?t=1612706073"
 | 
			
		||||
            },
 | 
			
		||||
            "category": {
 | 
			
		||||
                "id": 3,
 | 
			
		||||
                "name": "深度学习"
 | 
			
		||||
            },
 | 
			
		||||
            "language": {
 | 
			
		||||
                "id": 2,
 | 
			
		||||
                "name": "C"
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    ]
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
<aside class="success">
 | 
			
		||||
  Success Data.
 | 
			
		||||
</aside>
 | 
			
		||||
 | 
			
		||||
## 用户添加星标项目
 | 
			
		||||
用户添加星标项目
 | 
			
		||||
 | 
			
		||||
> 示例:
 | 
			
		||||
 | 
			
		||||
```shell
 | 
			
		||||
curl -X POST http://localhost:3000/api/users/yystopf/is_pinned_projects/pin.json
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
```javascript
 | 
			
		||||
await octokit.request('GET /api/users/:login/is_pinned_projects/pin.json')
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### HTTP 请求
 | 
			
		||||
`POST /api/users/:login/is_pinned_projects/pin.json`
 | 
			
		||||
 | 
			
		||||
### 请求字段说明:
 | 
			
		||||
#### 同时设定多个星标项目
 | 
			
		||||
参数  | 类型 | 字段说明
 | 
			
		||||
--------- | ----------- | -----------
 | 
			
		||||
|is_pinned_project_ids       |array   |设定为星标项目的id |
 | 
			
		||||
 | 
			
		||||
#### 只设定一个星标项目
 | 
			
		||||
参数  | 类型 | 字段说明
 | 
			
		||||
--------- | ----------- | -----------
 | 
			
		||||
|is_pinned_project_id       |integer   |设定为星标项目的id |
 | 
			
		||||
 | 
			
		||||
> 返回的JSON示例:
 | 
			
		||||
 | 
			
		||||
```json
 | 
			
		||||
{
 | 
			
		||||
    "status": 0,
 | 
			
		||||
    "message": "success"
 | 
			
		||||
}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## 获取用户贡献度
 | 
			
		||||
获取用户贡献度
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,22 @@
 | 
			
		|||
# == Schema Information
 | 
			
		||||
#
 | 
			
		||||
# Table name: pinned_projects
 | 
			
		||||
#
 | 
			
		||||
#  id         :integer          not null, primary key
 | 
			
		||||
#  user_id    :integer
 | 
			
		||||
#  project_id :integer
 | 
			
		||||
#  position   :integer          default("0")
 | 
			
		||||
#  created_at :datetime         not null
 | 
			
		||||
#  updated_at :datetime         not null
 | 
			
		||||
#
 | 
			
		||||
# Indexes
 | 
			
		||||
#
 | 
			
		||||
#  index_pinned_projects_on_project_id  (project_id)
 | 
			
		||||
#  index_pinned_projects_on_user_id     (user_id)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
class PinnedProject < ApplicationRecord
 | 
			
		||||
 | 
			
		||||
  belongs_to :user 
 | 
			
		||||
  belongs_to :project 
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -1,76 +1,76 @@
 | 
			
		|||
# == Schema Information
 | 
			
		||||
#
 | 
			
		||||
# Table name: projects
 | 
			
		||||
#
 | 
			
		||||
#  id                     :integer          not null, primary key
 | 
			
		||||
#  name                   :string(255)      default(""), not null
 | 
			
		||||
#  description            :text(4294967295)
 | 
			
		||||
#  homepage               :string(255)      default("")
 | 
			
		||||
#  is_public              :boolean          default("1"), not null
 | 
			
		||||
#  parent_id              :integer
 | 
			
		||||
#  created_on             :datetime
 | 
			
		||||
#  updated_on             :datetime
 | 
			
		||||
#  identifier             :string(255)
 | 
			
		||||
#  status                 :integer          default("1"), not null
 | 
			
		||||
#  lft                    :integer
 | 
			
		||||
#  rgt                    :integer
 | 
			
		||||
#  inherit_members        :boolean          default("0"), not null
 | 
			
		||||
#  project_type           :integer          default("0")
 | 
			
		||||
#  hidden_repo            :boolean          default("0"), not null
 | 
			
		||||
#  attachmenttype         :integer          default("1")
 | 
			
		||||
#  user_id                :integer
 | 
			
		||||
#  dts_test               :integer          default("0")
 | 
			
		||||
#  enterprise_name        :string(255)
 | 
			
		||||
#  organization_id        :integer
 | 
			
		||||
#  project_new_type       :integer
 | 
			
		||||
#  gpid                   :integer
 | 
			
		||||
#  forked_from_project_id :integer
 | 
			
		||||
#  forked_count           :integer          default("0")
 | 
			
		||||
#  publish_resource       :integer          default("0")
 | 
			
		||||
#  visits                 :integer          default("0")
 | 
			
		||||
#  hot                    :integer          default("0")
 | 
			
		||||
#  invite_code            :string(255)
 | 
			
		||||
#  qrcode                 :string(255)
 | 
			
		||||
#  qrcode_expiretime      :integer          default("0")
 | 
			
		||||
#  script                 :text(65535)
 | 
			
		||||
#  training_status        :integer          default("0")
 | 
			
		||||
#  rep_identifier         :string(255)
 | 
			
		||||
#  project_category_id    :integer
 | 
			
		||||
#  project_language_id    :integer
 | 
			
		||||
#  praises_count          :integer          default("0")
 | 
			
		||||
#  watchers_count         :integer          default("0")
 | 
			
		||||
#  issues_count           :integer          default("0")
 | 
			
		||||
#  pull_requests_count    :integer          default("0")
 | 
			
		||||
#  language               :string(255)
 | 
			
		||||
#  versions_count         :integer          default("0")
 | 
			
		||||
#  issue_tags_count       :integer          default("0")
 | 
			
		||||
#  closed_issues_count    :integer          default("0")
 | 
			
		||||
#  open_devops            :boolean          default("0")
 | 
			
		||||
#  gitea_webhook_id       :integer
 | 
			
		||||
#  open_devops_count      :integer          default("0")
 | 
			
		||||
#  recommend              :boolean          default("0")
 | 
			
		||||
#  platform               :integer          default("0")
 | 
			
		||||
#  license_id             :integer
 | 
			
		||||
#  ignore_id              :integer
 | 
			
		||||
#  default_branch         :string(255)      default("master")
 | 
			
		||||
#  website                :string(255)
 | 
			
		||||
#  lesson_url             :string(255)
 | 
			
		||||
#
 | 
			
		||||
# Indexes
 | 
			
		||||
#
 | 
			
		||||
#  index_projects_on_forked_from_project_id  (forked_from_project_id)
 | 
			
		||||
#  index_projects_on_identifier              (identifier)
 | 
			
		||||
#  index_projects_on_is_public               (is_public)
 | 
			
		||||
#  index_projects_on_lft                     (lft)
 | 
			
		||||
#  index_projects_on_name                    (name)
 | 
			
		||||
#  index_projects_on_platform                (platform)
 | 
			
		||||
#  index_projects_on_project_type            (project_type)
 | 
			
		||||
#  index_projects_on_recommend               (recommend)
 | 
			
		||||
#  index_projects_on_rgt                     (rgt)
 | 
			
		||||
#  index_projects_on_status                  (status)
 | 
			
		||||
#  index_projects_on_updated_on              (updated_on)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# == Schema Information
 | 
			
		||||
#
 | 
			
		||||
# Table name: projects
 | 
			
		||||
#
 | 
			
		||||
#  id                     :integer          not null, primary key
 | 
			
		||||
#  name                   :string(255)      default(""), not null
 | 
			
		||||
#  description            :text(4294967295)
 | 
			
		||||
#  homepage               :string(255)      default("")
 | 
			
		||||
#  is_public              :boolean          default("1"), not null
 | 
			
		||||
#  parent_id              :integer
 | 
			
		||||
#  created_on             :datetime
 | 
			
		||||
#  updated_on             :datetime
 | 
			
		||||
#  identifier             :string(255)
 | 
			
		||||
#  status                 :integer          default("1"), not null
 | 
			
		||||
#  lft                    :integer
 | 
			
		||||
#  rgt                    :integer
 | 
			
		||||
#  inherit_members        :boolean          default("0"), not null
 | 
			
		||||
#  project_type           :integer          default("0")
 | 
			
		||||
#  hidden_repo            :boolean          default("0"), not null
 | 
			
		||||
#  attachmenttype         :integer          default("1")
 | 
			
		||||
#  user_id                :integer
 | 
			
		||||
#  dts_test               :integer          default("0")
 | 
			
		||||
#  enterprise_name        :string(255)
 | 
			
		||||
#  organization_id        :integer
 | 
			
		||||
#  project_new_type       :integer
 | 
			
		||||
#  gpid                   :integer
 | 
			
		||||
#  forked_from_project_id :integer
 | 
			
		||||
#  forked_count           :integer          default("0")
 | 
			
		||||
#  publish_resource       :integer          default("0")
 | 
			
		||||
#  visits                 :integer          default("0")
 | 
			
		||||
#  hot                    :integer          default("0")
 | 
			
		||||
#  invite_code            :string(255)
 | 
			
		||||
#  qrcode                 :string(255)
 | 
			
		||||
#  qrcode_expiretime      :integer          default("0")
 | 
			
		||||
#  script                 :text(65535)
 | 
			
		||||
#  training_status        :integer          default("0")
 | 
			
		||||
#  rep_identifier         :string(255)
 | 
			
		||||
#  project_category_id    :integer
 | 
			
		||||
#  project_language_id    :integer
 | 
			
		||||
#  praises_count          :integer          default("0")
 | 
			
		||||
#  watchers_count         :integer          default("0")
 | 
			
		||||
#  issues_count           :integer          default("0")
 | 
			
		||||
#  pull_requests_count    :integer          default("0")
 | 
			
		||||
#  language               :string(255)
 | 
			
		||||
#  versions_count         :integer          default("0")
 | 
			
		||||
#  issue_tags_count       :integer          default("0")
 | 
			
		||||
#  closed_issues_count    :integer          default("0")
 | 
			
		||||
#  open_devops            :boolean          default("0")
 | 
			
		||||
#  gitea_webhook_id       :integer
 | 
			
		||||
#  open_devops_count      :integer          default("0")
 | 
			
		||||
#  recommend              :boolean          default("0")
 | 
			
		||||
#  platform               :integer          default("0")
 | 
			
		||||
#  license_id             :integer
 | 
			
		||||
#  ignore_id              :integer
 | 
			
		||||
#  default_branch         :string(255)      default("master")
 | 
			
		||||
#  website                :string(255)
 | 
			
		||||
#  lesson_url             :string(255)
 | 
			
		||||
#
 | 
			
		||||
# Indexes
 | 
			
		||||
#
 | 
			
		||||
#  index_projects_on_forked_from_project_id  (forked_from_project_id)
 | 
			
		||||
#  index_projects_on_identifier              (identifier)
 | 
			
		||||
#  index_projects_on_is_public               (is_public)
 | 
			
		||||
#  index_projects_on_lft                     (lft)
 | 
			
		||||
#  index_projects_on_name                    (name)
 | 
			
		||||
#  index_projects_on_platform                (platform)
 | 
			
		||||
#  index_projects_on_project_type            (project_type)
 | 
			
		||||
#  index_projects_on_recommend               (recommend)
 | 
			
		||||
#  index_projects_on_rgt                     (rgt)
 | 
			
		||||
#  index_projects_on_status                  (status)
 | 
			
		||||
#  index_projects_on_updated_on              (updated_on)
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class Project < ApplicationRecord
 | 
			
		||||
  include Matchable
 | 
			
		||||
| 
						 | 
				
			
			@ -114,6 +114,8 @@ class Project < ApplicationRecord
 | 
			
		|||
  has_many :team_projects, dependent: :destroy
 | 
			
		||||
  has_many :project_units, dependent: :destroy
 | 
			
		||||
  has_one :applied_transfer_project,-> { order created_at: :desc }, dependent: :destroy
 | 
			
		||||
  has_many :pinned_projects, dependent: :destroy 
 | 
			
		||||
  has_many :has_pinned_users, through: :pinned_projects, source: :user
 | 
			
		||||
 | 
			
		||||
  after_save :check_project_members
 | 
			
		||||
  scope :project_statics_select, -> {select(:id,:name, :is_public, :identifier, :status, :project_type, :user_id, :forked_count, :visits, :project_category_id, :project_language_id, :license_id, :ignore_id, :watchers_count, :created_on)}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -164,6 +164,9 @@ class User < Owner
 | 
			
		|||
 | 
			
		||||
  has_many :organization_users, dependent: :destroy
 | 
			
		||||
  has_many :organizations, through: :organization_users
 | 
			
		||||
  has_many :pinned_projects, dependent: :destroy
 | 
			
		||||
  has_many :is_pinned_projects, through: :pinned_projects, source: :project
 | 
			
		||||
  accepts_nested_attributes_for :is_pinned_projects
 | 
			
		||||
 | 
			
		||||
  # Groups and active users
 | 
			
		||||
  scope :active, lambda { where(status: STATUS_ACTIVE) }
 | 
			
		||||
| 
						 | 
				
			
			@ -195,6 +198,13 @@ class User < Owner
 | 
			
		|||
  validate :validate_sensitive_string
 | 
			
		||||
  validate :validate_password_length
 | 
			
		||||
 | 
			
		||||
  # 用户参与的所有项目
 | 
			
		||||
  def full_member_projects 
 | 
			
		||||
    normal_projects = Project.members_projects(self.id).to_sql
 | 
			
		||||
    org_projects = Project.joins(team_projects: [team: :team_users]).where(team_users: {user_id: self.id}).to_sql
 | 
			
		||||
    return Project.from("( #{ normal_projects} UNION #{ org_projects } ) AS projects").distinct
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def name
 | 
			
		||||
    login
 | 
			
		||||
  end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -5,6 +5,9 @@ json.name project.name
 | 
			
		|||
json.description Nokogiri::HTML(project.description).text
 | 
			
		||||
json.visits project.visits
 | 
			
		||||
json.praises_count project.praises_count.to_i
 | 
			
		||||
json.watchers_count project.watchers_count.to_i 
 | 
			
		||||
json.issues_count project.issues_count.to_i  
 | 
			
		||||
json.pull_requests_count project.pull_requests_count.to_i  
 | 
			
		||||
json.forked_count project.forked_count.to_i
 | 
			
		||||
json.is_public project.is_public
 | 
			
		||||
json.mirror_url project.repository&.mirror_url
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,4 +12,5 @@ json.permission render_permission(current_user, @project)
 | 
			
		|||
json.is_transfering @project.is_transfering
 | 
			
		||||
json.transfer do 
 | 
			
		||||
  json.partial! "/users/user_simple", locals: {user: @project&.applied_transfer_project&.owner}
 | 
			
		||||
end
 | 
			
		||||
end
 | 
			
		||||
json.is_pinned @project.has_pinned_users.include?(current_user)
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,4 @@
 | 
			
		|||
json.total_count @is_pinned_projects.total_count 
 | 
			
		||||
json.projects @is_pinned_projects.each do |project|
 | 
			
		||||
  json.partial! "projects/project_detail", project: project
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -266,6 +266,11 @@ Rails.application.routes.draw do
 | 
			
		|||
          end
 | 
			
		||||
        end
 | 
			
		||||
        resources :headmaps, only: [:index]
 | 
			
		||||
        resources :is_pinned_projects, only: [:index] do 
 | 
			
		||||
          collection do 
 | 
			
		||||
            post :pin 
 | 
			
		||||
          end
 | 
			
		||||
        end
 | 
			
		||||
        resources :organizations, only: [:index]
 | 
			
		||||
        # resources :projects, only: [:index]
 | 
			
		||||
        # resources :subjects, only: [:index]
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
class CreatePinnedProjects < ActiveRecord::Migration[5.2]
 | 
			
		||||
  def change
 | 
			
		||||
    create_table :pinned_projects do |t|
 | 
			
		||||
      t.references :user 
 | 
			
		||||
      t.references :project
 | 
			
		||||
      t.integer :position, default: 0
 | 
			
		||||
 | 
			
		||||
      t.timestamps
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -331,6 +331,12 @@
 | 
			
		|||
                  <li>
 | 
			
		||||
                    <a href="#1ae74893b1" class="toc-h2 toc-link" data-title="获取当前登陆用户信息">获取当前登陆用户信息</a>
 | 
			
		||||
                  </li>
 | 
			
		||||
                  <li>
 | 
			
		||||
                    <a href="#16a4666845" class="toc-h2 toc-link" data-title="获取用户星标项目">获取用户星标项目</a>
 | 
			
		||||
                  </li>
 | 
			
		||||
                  <li>
 | 
			
		||||
                    <a href="#3064477f38" class="toc-h2 toc-link" data-title="用户添加星标项目">用户添加星标项目</a>
 | 
			
		||||
                  </li>
 | 
			
		||||
                  <li>
 | 
			
		||||
                    <a href="#04cb758654" class="toc-h2 toc-link" data-title="获取用户贡献度">获取用户贡献度</a>
 | 
			
		||||
                  </li>
 | 
			
		||||
| 
						 | 
				
			
			@ -590,7 +596,7 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
<!--
 | 
			
		||||
 * @Date: 2021-03-01 10:35:21
 | 
			
		||||
 * @LastEditors: viletyy
 | 
			
		||||
 * @LastEditTime: 2021-05-27 10:27:14
 | 
			
		||||
 * @LastEditTime: 2021-05-27 14:22:52
 | 
			
		||||
 * @FilePath: /forgeplus/app/docs/slate/source/includes/_users.md
 | 
			
		||||
-->
 | 
			
		||||
<h1 id='users'>Users</h1><h2 id='1ae74893b1'>获取当前登陆用户信息</h2>
 | 
			
		||||
| 
						 | 
				
			
			@ -652,7 +658,235 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
<aside class="success">
 | 
			
		||||
  Success Data.
 | 
			
		||||
</aside>
 | 
			
		||||
<h2 id='04cb758654'>获取用户贡献度</h2>
 | 
			
		||||
<h2 id='16a4666845'>获取用户星标项目</h2>
 | 
			
		||||
<p>获取用户星标项目</p>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>示例:</p>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> GET http://localhost:3000/api/users/yystopf/is_pinned_projects.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/is_pinned_projects.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-2'>HTTP 请求</h3>
 | 
			
		||||
<p><code>GET api/users/:login/is_pinned_projects.json</code></p>
 | 
			
		||||
<h3 id='7447e4874e-2'>返回字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
<th>类型</th>
 | 
			
		||||
<th>字段说明</th>
 | 
			
		||||
</tr>
 | 
			
		||||
</thead><tbody>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>total_count</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>星标项目数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>identifier</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目标识</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>name</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目名称</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>description</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目描述</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>visits</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目访问数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>praises_count</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目点赞数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>watchers_count</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目关注数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>issues_count</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目issue数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>pull_requests_count</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目合并请求数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>forked_count</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目复刻数量</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>is_public</td>
 | 
			
		||||
<td>bool</td>
 | 
			
		||||
<td>项目是否公开</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>mirror_url</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>镜像地址</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>type</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>项目类型 0 普通项目 1 普通镜像项目 2 同步镜像项目</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>time_ago</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>上次更新时间</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>open_devops</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>是否开启devops</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>forked_from_project_id</td>
 | 
			
		||||
<td>int</td>
 | 
			
		||||
<td>fork项目id</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>platform</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目平台</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>author.name</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目拥有者名称</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>author.type</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目拥有者类型</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>author.login</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目拥有者用户名</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>author.image_url</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目拥有者头像</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>category.name</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目分类名称</td>
 | 
			
		||||
</tr>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>language.name</td>
 | 
			
		||||
<td>string</td>
 | 
			
		||||
<td>项目语言名称</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>返回的JSON示例:</p>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight json tab-json"><code><span class="p">{</span><span class="w">
 | 
			
		||||
    </span><span class="nl">"total_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w">
 | 
			
		||||
    </span><span class="nl">"projects"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w">
 | 
			
		||||
        </span><span class="p">{</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"id"</span><span class="p">:</span><span class="w"> </span><span class="mi">89</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"repo_id"</span><span class="p">:</span><span class="w"> </span><span class="mi">89</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"identifier"</span><span class="p">:</span><span class="w"> </span><span class="s2">"monkey"</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"boke"</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"description"</span><span class="p">:</span><span class="w"> </span><span class="s2">"dkkd"</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"visits"</span><span class="p">:</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"praises_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"watchers_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"issues_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"pull_requests_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"forked_count"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"is_public"</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"mirror_url"</span><span class="p">:</span><span class="w"> </span><span class="s2">"https://github.com/viletyy/monkey.git"</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"type"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"last_update_time"</span><span class="p">:</span><span class="w"> </span><span class="mi">1619685144</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"time_ago"</span><span class="p">:</span><span class="w"> </span><span class="s2">"27天前"</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"forked_from_project_id"</span><span class="p">:</span><span class="w"> </span><span class="kc">null</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"open_devops"</span><span class="p">:</span><span class="w"> </span><span class="kc">false</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"platform"</span><span class="p">:</span><span class="w"> </span><span class="s2">"forge"</span><span class="p">,</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"author"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"测试组织"</span><span class="p">,</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Organization"</span><span class="p">,</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"login"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ceshi_org"</span><span class="p">,</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"image_url"</span><span class="p">:</span><span class="w"> </span><span class="s2">"images/avatars/Organization/9?t=1612706073"</span><span class="w">
 | 
			
		||||
            </span><span class="p">},</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"category"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"id"</span><span class="p">:</span><span class="w"> </span><span class="mi">3</span><span class="p">,</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"深度学习"</span><span class="w">
 | 
			
		||||
            </span><span class="p">},</span><span class="w">
 | 
			
		||||
            </span><span class="nl">"language"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"id"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w">
 | 
			
		||||
                </span><span class="nl">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"C"</span><span class="w">
 | 
			
		||||
            </span><span class="p">}</span><span class="w">
 | 
			
		||||
        </span><span class="p">}</span><span class="w">
 | 
			
		||||
    </span><span class="p">]</span><span class="w">
 | 
			
		||||
</span><span class="p">}</span><span class="w">
 | 
			
		||||
</span></code></pre></div>
 | 
			
		||||
<aside class="success">
 | 
			
		||||
  Success Data.
 | 
			
		||||
</aside>
 | 
			
		||||
<h2 id='3064477f38'>用户添加星标项目</h2>
 | 
			
		||||
<p>用户添加星标项目</p>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>示例:</p>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> POST http://localhost:3000/api/users/yystopf/is_pinned_projects/pin.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/is_pinned_projects/pin.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-3'>HTTP 请求</h3>
 | 
			
		||||
<p><code>POST /api/users/:login/is_pinned_projects/pin.json</code></p>
 | 
			
		||||
<h3 id='aa883f5d52'>请求字段说明:</h3><h4 id='0ca7f0efb8'>同时设定多个星标项目</h4>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
<th>类型</th>
 | 
			
		||||
<th>字段说明</th>
 | 
			
		||||
</tr>
 | 
			
		||||
</thead><tbody>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>is_pinned_project_ids</td>
 | 
			
		||||
<td>array</td>
 | 
			
		||||
<td>设定为星标项目的id</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
<h4 id='f4b9f10991'>只设定一个星标项目</h4>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
<th>类型</th>
 | 
			
		||||
<th>字段说明</th>
 | 
			
		||||
</tr>
 | 
			
		||||
</thead><tbody>
 | 
			
		||||
<tr>
 | 
			
		||||
<td>is_pinned_project_id</td>
 | 
			
		||||
<td>integer</td>
 | 
			
		||||
<td>设定为星标项目的id</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
<p>返回的JSON示例:</p>
 | 
			
		||||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight json tab-json"><code><span class="p">{</span><span class="w">
 | 
			
		||||
    </span><span class="nl">"status"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w">
 | 
			
		||||
    </span><span class="nl">"message"</span><span class="p">:</span><span class="w"> </span><span class="s2">"success"</span><span class="w">
 | 
			
		||||
</span><span class="p">}</span><span class="w">
 | 
			
		||||
</span></code></pre></div><h2 id='04cb758654'>获取用户贡献度</h2>
 | 
			
		||||
<p>获取用户贡献度</p>
 | 
			
		||||
 | 
			
		||||
<blockquote>
 | 
			
		||||
| 
						 | 
				
			
			@ -660,9 +894,9 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> GET http://localhost:3000/api/users/yystopf/headmaps.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/headmaps.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-2'>HTTP 请求</h3>
 | 
			
		||||
</code></pre></div><h3 id='http-4'>HTTP 请求</h3>
 | 
			
		||||
<p><code>GET api/users/:login/headmaps.json</code></p>
 | 
			
		||||
<h3 id='7447e4874e-2'>返回字段说明:</h3>
 | 
			
		||||
<h3 id='7447e4874e-3'>返回字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -791,9 +1025,9 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> GET http://localhost:3000/api/users/yystopf/applied_messages.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/applied_messages.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-3'>HTTP 请求</h3>
 | 
			
		||||
</code></pre></div><h3 id='http-5'>HTTP 请求</h3>
 | 
			
		||||
<p><code>GET /api/users/:login/applied_messages.json</code></p>
 | 
			
		||||
<h3 id='aa883f5d52'>请求字段说明:</h3>
 | 
			
		||||
<h3 id='aa883f5d52-2'>请求字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -807,7 +1041,7 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
<td>用户标识</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
<h3 id='7447e4874e-3'>返回字段说明:</h3>
 | 
			
		||||
<h3 id='7447e4874e-4'>返回字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -1028,9 +1262,9 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> GET http://localhost:3000/api/users/yystopf/applied_transfer_projects.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/applied_transfer_projects.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-4'>HTTP 请求</h3>
 | 
			
		||||
</code></pre></div><h3 id='http-6'>HTTP 请求</h3>
 | 
			
		||||
<p><code>GET /api/users/:login/applied_transfer_projects.json</code></p>
 | 
			
		||||
<h3 id='aa883f5d52-2'>请求字段说明:</h3>
 | 
			
		||||
<h3 id='aa883f5d52-3'>请求字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -1044,7 +1278,7 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
<td>用户标识</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
<h3 id='7447e4874e-4'>返回字段说明:</h3>
 | 
			
		||||
<h3 id='7447e4874e-5'>返回字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -1220,9 +1454,9 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> POST http://localhost:3000/api/users/yystopf/applied_transfer_projects/2/accept.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/applied_transfer_projects/:id/accept.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-5'>HTTP 请求</h3>
 | 
			
		||||
</code></pre></div><h3 id='http-7'>HTTP 请求</h3>
 | 
			
		||||
<p><code>GET /api/users/:login/applied_transfer_projects/:id/accept.json</code></p>
 | 
			
		||||
<h3 id='aa883f5d52-3'>请求字段说明:</h3>
 | 
			
		||||
<h3 id='aa883f5d52-4'>请求字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -1241,7 +1475,7 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
<td>迁移id</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
<h3 id='7447e4874e-5'>返回字段说明:</h3>
 | 
			
		||||
<h3 id='7447e4874e-6'>返回字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -1411,9 +1645,9 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
</blockquote>
 | 
			
		||||
<div class="highlight"><pre class="highlight shell tab-shell"><code>curl <span class="nt">-X</span> POST http://localhost:3000/api/users/yystopf/applied_transfer_projects/2/refuse.json
 | 
			
		||||
</code></pre></div><div class="highlight"><pre class="highlight javascript tab-javascript"><code><span class="k">await</span> <span class="nx">octokit</span><span class="p">.</span><span class="nx">request</span><span class="p">(</span><span class="dl">'</span><span class="s1">GET /api/users/:login/applied_transfer_projects/:id/refuse.json</span><span class="dl">'</span><span class="p">)</span>
 | 
			
		||||
</code></pre></div><h3 id='http-6'>HTTP 请求</h3>
 | 
			
		||||
</code></pre></div><h3 id='http-8'>HTTP 请求</h3>
 | 
			
		||||
<p><code>GET /api/users/:login/applied_transfer_projects/:id/refuse.json</code></p>
 | 
			
		||||
<h3 id='aa883f5d52-4'>请求字段说明:</h3>
 | 
			
		||||
<h3 id='aa883f5d52-5'>请求字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			@ -1432,7 +1666,7 @@ Success — a happy kitten is an authenticated kitten!
 | 
			
		|||
<td>迁移id</td>
 | 
			
		||||
</tr>
 | 
			
		||||
</tbody></table>
 | 
			
		||||
<h3 id='7447e4874e-6'>返回字段说明:</h3>
 | 
			
		||||
<h3 id='7447e4874e-7'>返回字段说明:</h3>
 | 
			
		||||
<table><thead>
 | 
			
		||||
<tr>
 | 
			
		||||
<th>参数</th>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
require 'rails_helper'
 | 
			
		||||
 | 
			
		||||
RSpec.describe PinnedProject, type: :model do
 | 
			
		||||
  pending "add some examples to (or delete) #{__FILE__}"
 | 
			
		||||
end
 | 
			
		||||
		Loading…
	
		Reference in New Issue