{"action":"created","issue":{"url":"https://api.github.com/repos/graphql-python/graphene/issues/13","labels_url":"https://api.github.com/repos/graphql-python/graphene/issues/13/labels{/name}","comments_url":"https://api.github.com/repos/graphql-python/graphene/issues/13/comments","events_url":"https://api.github.com/repos/graphql-python/graphene/issues/13/events","html_url":"https://github.com/graphql-python/graphene/issues/13","id":112555135,"number":13,"title":"Field \"myTests\" argument \"id\" of type \"ID!\" is required but not provided.","user":{"login":"Globegitter","id":2580254,"avatar_url":"https://avatars.githubusercontent.com/u/2580254?v=3","gravatar_id":"","url":"https://api.github.com/users/Globegitter","html_url":"https://github.com/Globegitter","followers_url":"https://api.github.com/users/Globegitter/followers","following_url":"https://api.github.com/users/Globegitter/following{/other_user}","gists_url":"https://api.github.com/users/Globegitter/gists{/gist_id}","starred_url":"https://api.github.com/users/Globegitter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Globegitter/subscriptions","organizations_url":"https://api.github.com/users/Globegitter/orgs","repos_url":"https://api.github.com/users/Globegitter/repos","events_url":"https://api.github.com/users/Globegitter/events{/privacy}","received_events_url":"https://api.github.com/users/Globegitter/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2015-10-21T10:12:09Z","updated_at":"2015-10-21T19:44:32Z","closed_at":"2015-10-21T19:44:32Z","body":"First of all great work on these sets of python libraries they really seem great so far :)\r\n\r\nAnyway, just trying out graphene 0.1.6.0 (on python 2.7.x) with react/relay for the first time so might be some beginners mistake, But having\r\n\r\n```py\r\nclass Test(relay.Node):\r\n\r\n    custom_id = graphene.IDField(description='The id of the test.')\r\n    test_name = graphene.StringField(description='The name of the test.')\r\n    description = graphene.StringField(description='The description of the test.')\r\n    test_type = graphene.StringField(description='What type the test has.')\r\n    test_price = graphene.StringField(description='The price of each test.')\r\n    test_clients = graphene.StringField(description='Number of test clients.')\r\n\r\n    @classmethod\r\n    def get_node(cls, custom_id):\r\n        print('in get_node', custom_id)\r\n        return Test(getTest(custom_id))\r\n\r\nclass Query(graphene.ObjectType):\r\n    my_tests = relay.NodeField(Test,\r\n                               customArg=graphene.Argument(graphene.String))\r\n   all_my_tests = relay.ConnectionField(Test,\r\n                                      connection_type=MyConnection,\r\n                                      customArg=graphene.Argument(graphene.String))\r\n  node = relay.NodeField()\r\n\r\n    @resolve_only_args\r\n    def resolve_my_tests(self, **kwargs):\r\n        print('we are resolving all tests!')\r\n        for key in kwargs:\r\n            print('kwargs received', key, kwargs[key])\r\n        return [Test(t) for t in getTests()]\r\n```\r\n\r\nI am managing to return some data with hand-written queries, but trying a query that react passes, e.g. \r\n\r\n```\r\nresult = schema.execute('''\r\n        query TestsQuery {\r\n            myTests (customArg:\"1\") {\r\n                ...__RelayQueryFragment0pgs7aw\r\n            }\r\n        }\r\n        fragment __RelayQueryFragment0pgs7aw on Test{custom_id,description,id}\r\n        ''')\r\n```\r\n\r\njust throws the error `Field \"myTests\" argument \"id\" of type \"ID!\" is required but not provided.`. If I do provide an `id` field I get an error that it clashes:\r\n```   \r\nclass Test(relay.Node):\r\n  File \"/usr/local/lib/python2.7/dist-packages/graphene/core/types.py\", line 85, in __new__\r\n    field_names[field.name].__class__)\r\nException: Local field 'id' in class 'Test' (<class 'graphene.relay.fields.GlobalIDField'>) clashes with field with similar name from Interface Node (<class 'graphene.core.fields.StringField'>)\r\n```\r\n\r\nAny idea how to get around/fix this?\r\n\r\n**Edit**: I made some progress using the `ConnectionField` but I suppose I am just a bit unsure what the best way forward is with graphene if I want to define a schema where I can show all tests I have but also query them for certain parameters such as name, type etc.\r\n\r\nThe need for a connection class (with its own fields) with `ConnectionField` seems a bit like an extra step I am not sure is necessary for what I am trying to do.\r\n\r\nSo I suppose what I am imagining is something like\r\n```\r\nquery testsQuery {\r\n  allTests(customArg: \"1\") {\r\n    ...__RelayQueryFragment0pgs7aw\r\n  }\r\n}\r\nfragment __RelayQueryFragment0pgs7aw on Test{custom_id,description, test_name, id}\r\n```\r\n\r\nWhere-as right now I am creating on the fronend\r\n```\r\nquery testsQuery{allTests(customArg:\"1\"){...__RelayQueryFragment0pgs7aw}} \r\nfragment __RelayQueryFragment0pgs7aw on TestMyConnection{\r\n  edges{node{custom_id,description, test_name, id},cursor},\r\n  pageInfo{hasNextPage,hasPreviousPage\r\n}}\r\n```"},"comment":{"url":"https://api.github.com/repos/graphql-python/graphene/issues/comments/150004983","html_url":"https://github.com/graphql-python/graphene/issues/13#issuecomment-150004983","issue_url":"https://api.github.com/repos/graphql-python/graphene/issues/13","id":150004983,"user":{"login":"syrusakbary","id":188257,"avatar_url":"https://avatars.githubusercontent.com/u/188257?v=3","gravatar_id":"","url":"https://api.github.com/users/syrusakbary","html_url":"https://github.com/syrusakbary","followers_url":"https://api.github.com/users/syrusakbary/followers","following_url":"https://api.github.com/users/syrusakbary/following{/other_user}","gists_url":"https://api.github.com/users/syrusakbary/gists{/gist_id}","starred_url":"https://api.github.com/users/syrusakbary/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/syrusakbary/subscriptions","organizations_url":"https://api.github.com/users/syrusakbary/orgs","repos_url":"https://api.github.com/users/syrusakbary/repos","events_url":"https://api.github.com/users/syrusakbary/events{/privacy}","received_events_url":"https://api.github.com/users/syrusakbary/received_events","type":"User","site_admin":false},"created_at":"2015-10-21T19:44:32Z","updated_at":"2015-10-21T19:44:32Z","body":"The easiest solution is add a viewer field to your query.\r\nThis is how SWAPI Graphene is dealing with it:\r\nhttps://github.com/graphql-python/swapi-graphene/blob/master/starwars/schema.py#L143\r\nhttps://github.com/graphql-python/swapi-graphene/blob/master/starwars/schema.py#L169-L170\r\n\r\nClosing this issue, please reopen it if you think have something to do with this implementation."}}