Add CmsKit Menus documentation

pull/9672/head
enisn 4 years ago
parent e54699c63f
commit 318eea9e14

@ -12,6 +12,7 @@ The following features are currently available:
* Provides a [**comment**](Comments.md) system to add comments feature to any kind of resource, like blog post or a product review page. * Provides a [**comment**](Comments.md) system to add comments feature to any kind of resource, like blog post or a product review page.
* Provides a [**reaction**](Reactions.md) system to add reactions (smileys) feature to any kind of resource, like a blog post or a comment. * Provides a [**reaction**](Reactions.md) system to add reactions (smileys) feature to any kind of resource, like a blog post or a comment.
* Provides a [**rating**](Ratings.md) system to add rating feature to any kind of resource. * Provides a [**rating**](Ratings.md) system to add rating feature to any kind of resource.
* Provides a [**menu**](Menus.md) system to manage public menus dynamically.
Click to a feature to understand and learn how to use it. Click to a feature to understand and learn how to use it.

@ -0,0 +1,88 @@
# CMS Kit: Pages
CMS Kit Menu system allows to manage public menus dynamically.
## The User Interface
### Menu items
CMS Kit module admin side adds the following items to the main menu, under the *CMS* menu item:
* **Menus**: Menu management page.
`CmsKitAdminMenus` class has the constants for the menu item names.
### Menus
#### Menu Management
Menus page is used to manage dynamic public menus in the system.
![cms-kit-menus-page](../../images/cmskit-module-menus-page.png)
Created menus will be visible on public site.
![cms-kit-public-menus](../../images//cmskit-module-menus-public.png)
# Internals
## Domain Layer
#### Aggregates
This module follows the [Entity Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Entities) guide.
##### Menus
- `MenuItem` (aggregate root): A Menu Item presents a single node at menu tree.
#### Repositories
This module follows the [Repository Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Repositories) guide.
Following custom repositories are defined for this feature:
- `IMenuItemRepository`
#### Domain services
This module follows the [Domain Services Best Practices & Conventions](https://docs.abp.io/en/abp/latest/Best-Practices/Domain-Services) guide.
##### Menu Item Manager
`MenuItemManager` is used to perform some operations for the `MenuItemManager` aggregate root.
### Application layer
#### Application services
- `MenuItemAdminAppService` (implements `IMenuItemAdminAppService`): Implements the management operations of menu system.
- `MenuItemPublicAppService` (implements `IMenuItemPublicAppService`): Implements the public use cases of menu system.
### Database providers
#### Common
##### Table / collection prefix & schema
All tables/collections use the `Cms` prefix by default. Set static properties on the `CmsKitDbProperties` class if you need to change the table prefix or set a schema name (if supported by your database provider).
##### Connection string
This module uses `CmsKit` for the connection string name. If you don't define a connection string with this name, it fallbacks to the `Default` connection string.
See the [connection strings](https://docs.abp.io/en/abp/latest/Connection-Strings) documentation for details.
#### Entity Framework Core
##### Tables
- CmsMenuItems
#### MongoDB
##### Collections
- CmsMenuItems

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Loading…
Cancel
Save