관리자 패널을 사용하면 증기 프로젝트의 관리 기능을 쉽게 설정하고 유지 관리 할 수 있습니다. 다음은이 패키지와 함께 상자에서 나오는 일부 상위 Feautures 목록입니다.
Package.swift
파일 업데이트 :
. package ( url : " https://github.com/nodes-vapor/admin-panel-provider.git " , . upToNextMinor ( from : " 0.7.0 " ) ) ,
targets: [
. target (
name : " App " ,
dependencies : [
...
" AdminPanelProvider "
]
) ,
...
]
다음에 vapor update
관리자 패널을 실행하면 설치됩니다.
이 저장소의 Resources
및 Public
폴더를 프로젝트에 복사하십시오. repo를 지퍼로 다운로드 한 다음 폴더를 프로젝트의 루트로 이동할 수 있습니다. 프로젝트의 파일을 덮어 쓰지 않는지 확인하십시오.
메타를 사용하는 경우 meta.json
내에서 exceptPaths
배열에 다음 경로를 추가하는 것을 잊지 마십시오.
"/bower_components/*"
"/dist/*"
"/plugins/*"
Config+Setup.swift
(또는 공급자를 설정하는 곳)에서 관리자 패널 제공 업체를 추가하십시오.
import AdminPanelProvider
// ...
private func setupProviders ( ) throws {
// ...
try addProvider ( AdminPanelProvider . Provider . self )
}
또한 아직없는 경우 유창한 공급자를 추가해야합니다.
try addProvider ( FluentProvider . Provider . self )
이 패키지는 리프 뷰 렌더러에 크게 의존합니다. 관리자 패널이 작동하려면 LeafProvider
를 추가했는지 확인하십시오.
import LeafProvider
// ...
private func setupProviders ( ) throws {
// ...
try addProvider ( LeafProvider . Provider . self )
}
프로젝트가 Leaf를 View Renderer로 사용하고 있는지 확인하십시오. droplet.json
의 값 leaf
에 대한 키 view
설정하여 리프를 렌더러로 설정할 수 있습니다. 아직 제공되지 않은 경우 추가하십시오.
"//" : " Choose which view renderer to use " ,
"//" : " leaf: Vapor's Leaf renderer " ,
"view" : " leaf " ,
SSO 제공 업체를 추가하지 않은 경우 다음으로해야 할 일은 새 관리자 패널에 로그인 할 수 있도록 사용자를 시드하는 것입니다. 이렇게하려면 droplet.json
의 commands
배열에 Seeder 명령을 추가하십시오.
"//" : " 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 "
],
이제 씨더를 실행하는 두 가지 방법이 있습니다. 당신은 다음에 의해 터미널에서 시드러를 실행합니다.
vapor build; vapor run admin-panel:seeder
또는 Xcode에서 Run
체계를 일시적으로 편집하고 "인수가 시작된 인수"아래에 admin-panel:seeder
추가합니다. 프로젝트를 실행할 때 시드러가 실행됩니다. 프로젝트를 실행하고 사용자가 시드 된 후에 인수를 제거하십시오.
씨앗을 사용하여 생성 될 사용자에게는 다음과 같은 자격 증명이 있습니다.
Vapor에는 런타임에 동적으로 캐스팅하는 데 사용되는 Node.fuzzy
어레이가 있습니다. 렌더링 템플릿으로 불일치가 발생하는 경우 퍼지 어레이가 ViewData.self
누락되기 때문에 아마도 가장 가능성이 높습니다. 스스로 배열에 추가했거나 모든 모델이 JSON
/ Node
에 부합하는지 확인하십시오. 예제 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 ]
관리자 패널에는 프론트 엔드 개발의 부담을 완화하는 데 도움이되는 맞춤형 잎 태그가 많이 제공됩니다. 여기에서 전체 목록을 확인하십시오.
프로젝트에 CORS 미들웨어를 추가하는 것이 좋습니다.
adminpanel.json
구성 파일을 수정하거나 (추가 또는) 관리자 패널을 구성 할 수 있습니다. 아래는 사용 가능한 키의 고장입니다.
열쇠 | 예제 값 | 필수의 | 설명 |
---|---|---|---|
name | My Tech Blog | 아니요 | 이것은 관리자 패널 내부의 제목입니다. |
baseUrl | http://mytechblog.com | 아니요 | 관리자 패널의 URL을 생성하는 데 사용됩니다 (예 : 비밀번호 재설정). |
skin | green-light | 아니요 | 관리자 패널에 사용할 피부. 옵션은 adminlte가 지원하는 사용 가능한 스킨에 해당합니다. 피부를 지정할 때 skin- 접두사를 생략하십시오. |
email | {"fromName": "Admin Panel", "fromAddress": "[email protected]"} ` | 아니요 | 이것은 AdminPanel의 메일러를 구성하는 데 사용됩니다. |
단일 사인온은 프로젝트 사용자에게 관리자 패널에 로그인 할 수있는 편리한 방법 일 수 있습니다.
이 패키지는 Evapor 팀이 노드에서 개발하고 유지 관리합니다. 이 프로젝트의 패키지 소유자는 Steffen입니다.
이 패키지는 MIT 라이센스에 따라 라이센스가 부여 된 오픈 소프트웨어입니다.