I am learning Play! 2 for Scala, coming from a Django background. In Django I was used to being able to modularize a project by dividing it in various applications, each having its own models, views, controllers and assets. Does Play! allow a similar subdivision of a project or it is mandatory that everything goes under the app directory?
EDIT I already got the answer, but I will make some examples of the use of Django apps:
- The admin is a separate app
- An app can be used to define abstract models for internationalization. Actual models that need to be internationalized can inherit from them
- I created an app that defines a Facebook user model, managing the Facebook API, and exposes is to other applications that need it
- There exists a Django app to generate a sitemap programmatically
- Another Django app allows to create a robots.txt from rules stored in the database, so that one can edit robot rules from the admin interface
and so on
Maybe sub-projects are what you need.
It would help if you would describe a little why you want to modularize and what a module should consist of from your point of view.