El panel de administración facilita la configuración y manteniendo las funciones de administración para su proyecto de vapor. Aquí hay una lista de algunas de las mejores feas que sale de la caja con este paquete:
Actualice su archivo Package.swift
:
. package ( url : " https://github.com/nodes-vapor/admin-panel-provider.git " , . upToNextMinor ( from : " 0.7.0 " ) ) ,
targets: [
. target (
name : " App " ,
dependencies : [
...
" AdminPanelProvider "
]
) ,
...
]
La próxima vez que ejecute el panel de administración de EG vapor update
se instalará.
Copie los Resources
y las carpetas Public
de este repositorio en su proyecto. Puede descargar el repositorio como una zip y luego mover las carpetas a la raíz de su proyecto. Recuerde verificar que no está sobrescribiendo ningún archivo en su proyecto.
Si está utilizando meta, no olvide agregar las siguientes rutas a la matriz exceptPaths
en meta.json
:
"/bower_components/*"
"/dist/*"
"/plugins/*"
En su Config+Setup.swift
(o donde sea que configure sus proveedores), asegúrese de agregar el proveedor del panel de administración:
import AdminPanelProvider
// ...
private func setupProviders ( ) throws {
// ...
try addProvider ( AdminPanelProvider . Provider . self )
}
También asegúrese de agregar el proveedor con fluidez si aún no ha sido:
try addProvider ( FluentProvider . Provider . self )
Este paquete depende en gran medida del renderizador de la vista de hoja. Para que funcione el panel de administración, asegúrese de haber agregado el LeafProvider
:
import LeafProvider
// ...
private func setupProviders ( ) throws {
// ...
try addProvider ( LeafProvider . Provider . self )
}
Asegúrese de que su proyecto esté utilizando Leaf como renderizador de vista. Puede establecer la hoja como su renderizador estableciendo la view
clave en la leaf
de valor en su droplet.json
. En caso de que aún no se dé, solo agrégalo:
"//" : " Choose which view renderer to use " ,
"//" : " leaf: Vapor's Leaf renderer " ,
"view" : " leaf " ,
Si no ha agregado un proveedor SSO, lo siguiente que debe hacer es sembrar a un usuario para poder iniciar sesión en su nuevo panel de administración. Para hacer esto, agregue el comando sembrador a su matriz de commands
en su droplet.json
:
"//" : " Choose which commands this application can run " ,
"//" : " prepare: Supplied by the Fluent provider. Prepares the database (configure in fluent.json) " ,
"commands" : [
" prepare " ,
" admin-panel:seeder "
],
Ahora tienes dos formas de ejecutar el sembrador. O ejecutas la sembradora en tu terminal por:
vapor build; vapor run admin-panel:seeder
O edita temporalmente el esquema Run
en Xcode y agregue admin-panel:seeder
en "Argumentos aprobados en el lanzamiento". Esto ejecutará el sembrador cuando ejecute el proyecto. Ejecute el proyecto y elimine el argumento después de que el usuario haya sido sembrado.
El usuario que se creará utilizando el sembrado tendrá las siguientes credenciales:
Vapor tiene una matriz Node.fuzzy
que se usa para lanzar dinámicamente en tiempo de ejecución. Si está experimentando inconsistencias con las plantillas de representación, lo más Node
es que le falte a su matriz difusa JSON
ViewData.self
Ejemplo Node.fuzzy
:
extension Config {
public func setup ( ) throws {
// allow fuzzy conversions for these types
// (add your own types here)
Node . fuzzy = [ JSON . self , Node . self , ViewData . self ]
El panel de administración viene con un montón de etiquetas de hoja personalizadas que ayudan a aliviar la carga del desarrollo frontend. Mira la lista completa aquí.
Se recomienda encarecidamente que agregue el Cors Middleware a su proyecto.
El panel de administración se puede configurar (agregando o) modificando el archivo de configuración adminpanel.json
. A continuación se muestra un desglose de las claves disponibles.
Llave | Valor de ejemplo | Requerido | Descripción |
---|---|---|---|
name | My Tech Blog | No | Este será el título dentro del panel de administración. |
baseUrl | http://mytechblog.com | No | Esto se utilizará para generar URL para el panel de administración (por ejemplo, al restablecer una contraseña). |
skin | green-light | No | La piel para usar para el panel de administración. Las opciones corresponderán a las pieles disponibles admitidas por AdminLTe. Por favor, omita el prefijo skin- al especificar la piel. |
email | {"fromName": "Admin Panel", "fromAddress": "[email protected]"} ` | No | Esto se utilizará para configurar el Mailer de AdminPanel. |
El inicio de sesión único puede ser una forma conveniente de ofrecer a los usuarios de su proyecto para iniciar sesión en su panel de administración.
Este paquete es desarrollado y mantenido por el equipo de Vapor en los nodos. El propietario del paquete para este proyecto es Steffen.
Este paquete es software de código abierto con licencia bajo la licencia del MIT