首页 > 解决方案 > 具有 Ruby-on-rails 和 GraphQL 突变的唯一字符串约束

问题描述

我一直在搜索文档,但我没有看到任何关于使用 Ruby 的 GraphQL 中的唯一约束的任何内容。

如何对要通过突变的字符串强制执行唯一约束?

module Types
  class PersonType < Types::BaseObject
    field :name, String, null:false
  end
end

我尝试在该字段中添加“,唯一:真”,但它无法识别关键字唯一。

标签: ruby-on-railsgraphql

解决方案


您可以对突变的解析器强制执行唯一约束规则:

const resolvers={
...

    Mutation:{
      someField:async(parent,{name},context)=>{
          if(name === 'something'){
              return context.dataSource.createUser(....)
          }else(e){
               throw new Error("This name is not allowed")
                  }
          }
      }
    }
 

推荐阅读