| @@ -15,7 +15,7 @@ module RegisterHelper | |||||
| interactor = Gitea::RegisterInteractor.call({username: username, email: email, password: password}) | interactor = Gitea::RegisterInteractor.call({username: username, email: email, password: password}) | ||||
| if interactor.success? | if interactor.success? | ||||
| gitea_user = interactor.result | gitea_user = interactor.result | ||||
| result = Gitea::User::GenerateTokenService.new(username, password).call | |||||
| result = Gitea::User::GenerateTokenService.call(username, password) | |||||
| user.gitea_token = result['sha1'] | user.gitea_token = result['sha1'] | ||||
| user.gitea_uid = gitea_user['id'] | user.gitea_uid = gitea_user['id'] | ||||
| if user.save! | if user.save! | ||||
| @@ -9,14 +9,18 @@ class Gitea::User::GenerateTokenService < Gitea::ClientService | |||||
| def call | def call | ||||
| params = {} | |||||
| url = "/users/#{username}/tokens".freeze | |||||
| params = params.merge(token: token_params, data: request_params) | |||||
| post(url, params) | |||||
| params = Hash.new.merge(token: token_params, data: request_params) | |||||
| response = post(url, params) | |||||
| render_200_response(response) | |||||
| end | end | ||||
| private | private | ||||
| def url | |||||
| "/users/#{@username}/tokens".freeze | |||||
| end | |||||
| def token_params | def token_params | ||||
| { | { | ||||
| username: username, | username: username, | ||||
| @@ -25,6 +29,10 @@ class Gitea::User::GenerateTokenService < Gitea::ClientService | |||||
| end | end | ||||
| def request_params | def request_params | ||||
| { name: username } | |||||
| { name: "#{@username}-#{token_name}" } | |||||
| end | |||||
| def token_name | |||||
| SecureRandom.hex(6) | |||||
| end | end | ||||
| end | end | ||||
| @@ -69,23 +69,29 @@ bundle exec rake sync_table_structure:import_csv | |||||
| rails db:migrate RAILS_ENV=development | rails db:migrate RAILS_ENV=development | ||||
| ``` | ``` | ||||
| ### 8. 启动redis(此处已mac系统为例) | |||||
| ### 8. clone前端代码 | |||||
| **将前端代码克隆到public/react目录下,目录结构应该是: public/react/build** | |||||
| ```bash | |||||
| git clone -b dev_trustie https://git.trustie.net/jasder/build.git | |||||
| ``` | |||||
| ### 9. 启动redis(此处已mac系统为例) | |||||
| ```bash | ```bash | ||||
| redis-server& | redis-server& | ||||
| ``` | ``` | ||||
| ### 9. 启动sidekiq | |||||
| ### 10. 启动sidekiq | |||||
| **开发环境为development, 生成环境为production** | **开发环境为development, 生成环境为production** | ||||
| ```bash | ```bash | ||||
| bundle exec sidekiq -C config/sidekiq.yml -e production -d | bundle exec sidekiq -C config/sidekiq.yml -e production -d | ||||
| ``` | ``` | ||||
| ### 10. 启动rails服务 | |||||
| ### 1`. 启动rails服务 | |||||
| ```bash | ```bash | ||||
| rails s | rails s | ||||
| ``` | ``` | ||||
| ### 11. 浏览器访问 | |||||
| ### 12. 浏览器访问 | |||||
| 在浏览器中输入如下地址访问: | 在浏览器中输入如下地址访问: | ||||
| ```bash | ```bash | ||||
| http://localhost:3000/ | http://localhost:3000/ | ||||