Ash FrameworkAF
Ash Framework3y ago
44 replies
exadra37

How to use define_interface example in docs it's not clear

Show where you found the issue


I have followed the Get Started guide to build the Helpdesk app and then followed the Whats next section where we have a link to learn how to use Code interfaces.

While I perfectly understood how to use the define_for , because it builds on top of the Helpdesk app, I wasn't able to grasp how to use the define_interface, because the example for it doesn't build on top of the Helpdesk app.

Share the problematic documentation


define_for and define_interface


Notice how we included a specific Api module using define_for above. Without this, no functions will be defined in the resource. This is because you might want to define the interface for multiple resources in a single module. While we encourage the use of define_for Api , it is not the only way to do it. You could also do something like this:

defmodule MyApp.MyApi.Interface do
  require Ash.CodeInterface

  Ash.CodeInterface.define_interface(MyApp.MyApi, MyApp.Resource1)
  Ash.CodeInterface.define_interface(MyApp.MyApi, MyApp.Resource2)
end

And then call functions on MyApp.MyApi.Interface instead.


How can I use the above code example in the context of the Helpdesk app?
Ash HQ
Read the "Get Started" guide on Ash HQ
Guide: Get Started
Ash HQ
Read the "Code Interface" guide on Ash HQ
Guide: Code Interface
Was this page helpful?