Hi Machiel,
There have been some tweaks to the way Joodo 2.0 uses controllers.
In the 1.2 version, the controller syntax in your core.clj file is something like "(controller-router 'file_path.controller_folder)" which is found within the "(defroutes <web-routes>)" function.
In 2.0, each controller should be called in your core.clj file using the refresh middleware: (refresh/handler 'namespace.more-namespace/top-level-controller-function) . The entire path to the controller file is necessary as well as the specific function.
For example, take the Joodoweb application itself:
an example of the old code is:
(defroutes joodoweb-routes
(controller-router 'joodoweb.controller)
)
an example of the new code is:
(defroutes joodoweb-routes
(refresh/handler 'joodoweb.controller.docs-controller/docs-controller)
(refresh/handler 'joodoweb.controller.tutorial-controller/tutorial-controller)
)
note how each controller file must be included with its full namespace and top level function. You'll also have to add the refresh middleware to you namespace dependencies. In this example I've added it with the pseudonym "refresh":
(ns my-app.core
(:require
[joodo.middleware.refresh :as refresh])
)
for the receiving method of each controller, nothing should have changed since version 1.2. However an example as we use it is below:
(defroutes docs-controller
(GET "/docs" [] (redirect "docs/index"))
(context "/docs" []
(GET "/index" [] (render-template "docs/index")))
)
As to your question about the joodoweb tutorial, we hope to have it updated in the next week or so.
Hopefully that helps. Let me know if you need any additional help or if you have any other questions about Joodo.