小编gue*_*gui的帖子

GraphQL Ruby:如何编写具有多个参数的 DRY 突变?

我正在使用 app为我的graphql-ruby编写一个基于devise- jwt的身份验证系统。在这个过程中,我为创建一个新的用户帐户做了一个改变,它需要 7 个参数,这在我的代码中产生了很多重复:

module Mutations
  class SignUpMutation < Mutations::BaseMutation
    argument :email, String, required: true
    argument :password, String, required: true
    argument :family_name, String, required: true
    argument :family_name_phonetic, String, required: true
    argument :given_name, String, required: true
    argument :given_name_phonetic, String, required: true
    argument :newsletter_optin, Boolean, required: false

    field :token, String, null: true
    field :user, Types::UserType, null: true

    def resolve(email:, password:,
                family_name:, family_name_phonetic:,
                given_name:, given_name_phonetic:,
                newsletter_optin:
               )
      result = {
        token: nil,
        user: nil
      }
      new_user = User.new( …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails graphql

3
推荐指数
1
解决办法
1977
查看次数

标签 统计

graphql ×1

ruby ×1

ruby-on-rails ×1