API de comptabilité horaire.
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

memberships_controller.rb 1017B

1234567891011121314151617181920212223242526272829303132333435
  1. class Api::V1::MembershipsController < ApplicationController
  2. before_action :set_memberships, only: %i[show update destroy]
  3. before_action :check_login
  4. def index
  5. render json: MembershipSerializer.new(Membership.all).serializable_hash.to_json
  6. end
  7. def show
  8. render json: MembershipSerializer.new(@membership).serializable_hash.to_json
  9. end
  10. def create
  11. userId = User.find_by(username: params[:membership][:username]).id
  12. teamId = Team.find_by(name: params[:membership][:team_name]).id
  13. jtu = Membership.new(team_id: teamId, user_id: userId, can_edit: false)
  14. if jtu.save
  15. render json: MembershipSerializer.new(jtu).serializable_hash.to_json, status: :created
  16. else
  17. render json: { errors: jtu.errors }, status: :unprocessable_entity
  18. end
  19. end
  20. private
  21. def memberships_params
  22. params.require(:membership).permit(:team_id, :user_id, :can_edit, :created_at, :updated_at)
  23. end
  24. def set_memberships
  25. @membership = Membership.find(params[:id])
  26. end
  27. end