This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2019-06-20
Channels
- # announcements (1)
- # beginners (164)
- # calva (70)
- # cider (26)
- # cljs-dev (6)
- # cljsrn (1)
- # clojars (3)
- # clojure (123)
- # clojure-berlin (1)
- # clojure-dev (5)
- # clojure-ecuador (9)
- # clojure-europe (2)
- # clojure-italy (14)
- # clojure-nl (21)
- # clojure-nlp (5)
- # clojure-portugal (1)
- # clojure-spain (3)
- # clojure-spec (26)
- # clojure-uk (47)
- # clojurescript (17)
- # clr (1)
- # code-reviews (7)
- # core-async (5)
- # cursive (8)
- # data-science (2)
- # datomic (28)
- # emacs (23)
- # events (1)
- # fulcro (43)
- # graalvm (6)
- # graphql (8)
- # immutant (5)
- # jackdaw (17)
- # jobs (1)
- # jobs-discuss (20)
- # joker (3)
- # leiningen (8)
- # luminus (12)
- # off-topic (61)
- # overtone (5)
- # pathom (2)
- # quil (1)
- # re-frame (15)
- # reagent (2)
- # reitit (23)
- # remote-jobs (1)
- # schema (1)
- # shadow-cljs (26)
- # tools-deps (56)
- # vim (4)
I’ve just upgraded to lacinia 0.3.3 and my schema is no longer valid. First of all, GREAT error messages 🙂 Here’s the offending thing:
:labels
{:type ...,
:description ...,
:resolve #'nosco.graphql.resolvers.users/user-userlabels},
should satisfy
fn?
or
(fn
[%]
(satisfies?
com.walmartlabs.lacinia.resolve/FieldResolver
%))
There where some automatic conversions that no longer happen with the latest version. I used a number for id, and had to make it a string from the frontend. Not sure if that helps. But it's probably something similar with the schema, like a key to string needing an explicit (name x) or something.
Basic ❓ r.e. GraphQL / Lacinia: I often find myself wanting to do the following:
{:objects {:foo {:fields {:foo_1 {:type String
:resolve :resolve-foo-1}}
:resolve :resolve-foo}}}
And directly querying like { foo { foo_1 } }
. But this is invalid, and I always need:
{:objects {:foo {:fields {:foo_1 {:type String
:resolve :resolve-foo-1}}}}
:queries {:foo {:type :foo
:resolve :resolve-foo}}}
Is it always necessary to do it this way, or am I missing an easier option?