]> source.dussan.org Git - gitea.git/commitdiff
docs: modules do not rely on models, services do (#17861)
authorsinguliere <35190819+singuliere@users.noreply.github.com>
Tue, 30 Nov 2021 11:56:12 +0000 (12:56 +0100)
committerGitHub <noreply@github.com>
Tue, 30 Nov 2021 11:56:12 +0000 (11:56 +0000)
services: provide some services for users, usually use
database (models) modules: provide some basic functions without
database, eg: code parser, etc The major difference is services use
database, while modules don’t.

Signed-off-by: singuliere <singuliere@autistici.org>
docs/content/doc/developers/guidelines-backend.md

index 69bdc6d2a646b8d6d1e88bec7e345dbe3d66a3ee..cca17150b7655127233d619f4327467b3c37cde3 100644 (file)
@@ -38,7 +38,7 @@ To maintain understandable code and avoid circular dependencies it is important
   - `models/db`: Basic database operations. All other `models/xxx` packages should depend on this package. The `GetEngine` function should only be invoked from `models/`.
   - `models/fixtures`: Sample data used in unit tests and integration tests. One `yml` file means one table which will be loaded into database when beginning the tests.
   - `models/migrations`: Stores database migrations between versions. PRs that change a database structure **MUST** also have a migration step.
-- `modules`: Different modules to handle specific functionality in Gitea. Work in Progress: Some of them should be moved to `services`.
+- `modules`: Different modules to handle specific functionality in Gitea. Work in Progress: Some of them should be moved to `services`, in particular those that depend on models because they rely on the database.
   - `modules/setting`: Store all system configurations read from ini files and has been referenced by everywhere. But they should be used as function parameters when possible.
   - `modules/git`: Package to interactive with `Git` command line or Gogit package.
 - `public`: Compiled frontend files (javascript, images, css, etc.)