add jekyll docs
This commit is contained in:
parent
ac2d1d6ed0
commit
2029c6d1f4
11
.gitignore
vendored
11
.gitignore
vendored
@ -9,9 +9,7 @@ Cargo.lock
|
|||||||
# These are backup files generated by rustfmt
|
# These are backup files generated by rustfmt
|
||||||
**/*.rs.bk
|
**/*.rs.bk
|
||||||
|
|
||||||
|
|
||||||
# Added by cargo
|
# Added by cargo
|
||||||
|
|
||||||
/target
|
/target
|
||||||
database.db
|
database.db
|
||||||
database.*
|
database.*
|
||||||
@ -20,3 +18,12 @@ database.db-wal
|
|||||||
*.env
|
*.env
|
||||||
example/.env
|
example/.env
|
||||||
.vscode
|
.vscode
|
||||||
|
|
||||||
|
# Jekyll
|
||||||
|
_site/
|
||||||
|
.sass-cache/
|
||||||
|
.jekyll-cache/
|
||||||
|
.jekyll-metadata
|
||||||
|
# Ignore folders generated by Bundler
|
||||||
|
.bundle/
|
||||||
|
vendor/
|
24
docs/404.html
Normal file
24
docs/404.html
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
|
||||||
|
<style type="text/css" media="screen">
|
||||||
|
.container {
|
||||||
|
margin: 10px auto;
|
||||||
|
max-width: 600px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
margin: 30px 0;
|
||||||
|
font-size: 4em;
|
||||||
|
line-height: 1;
|
||||||
|
letter-spacing: -1px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<h1>404</h1>
|
||||||
|
|
||||||
|
<p><strong>Page not found :(</strong></p>
|
||||||
|
<p>The requested page could not be found.</p>
|
||||||
|
</div>
|
34
docs/Gemfile
Normal file
34
docs/Gemfile
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
# Hello! This is where you manage which Jekyll version is used to run.
|
||||||
|
# When you want to use a different version, change it below, save the
|
||||||
|
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
|
||||||
|
#
|
||||||
|
# bundle exec jekyll serve
|
||||||
|
#
|
||||||
|
# This will help ensure the proper Jekyll version is running.
|
||||||
|
# Happy Jekylling!
|
||||||
|
#gem "jekyll", "~> 3.8.6"
|
||||||
|
|
||||||
|
# This is the default theme for new Jekyll sites. You may change this to anything you like.
|
||||||
|
gem "minima", "~> 2.0"
|
||||||
|
|
||||||
|
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
|
||||||
|
# uncomment the line below. To upgrade, run `bundle update github-pages`.
|
||||||
|
gem "github-pages", group: :jekyll_plugins
|
||||||
|
|
||||||
|
# If you have any plugins, put them here!
|
||||||
|
group :jekyll_plugins do
|
||||||
|
gem "jekyll-feed", "~> 0.6"
|
||||||
|
end
|
||||||
|
|
||||||
|
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
||||||
|
# and associated library.
|
||||||
|
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
|
||||||
|
gem "tzinfo", "~> 1.2"
|
||||||
|
gem "tzinfo-data"
|
||||||
|
end
|
||||||
|
|
||||||
|
# Performance-booster for watching directories on Windows
|
||||||
|
gem "wdm", "~> 0.1.0", :install_if => Gem.win_platform?
|
||||||
|
|
271
docs/Gemfile.lock
Normal file
271
docs/Gemfile.lock
Normal file
@ -0,0 +1,271 @@
|
|||||||
|
GEM
|
||||||
|
remote: https://rubygems.org/
|
||||||
|
specs:
|
||||||
|
activesupport (6.0.6)
|
||||||
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
||||||
|
i18n (>= 0.7, < 2)
|
||||||
|
minitest (~> 5.1)
|
||||||
|
tzinfo (~> 1.1)
|
||||||
|
zeitwerk (~> 2.2, >= 2.2.2)
|
||||||
|
addressable (2.8.1)
|
||||||
|
public_suffix (>= 2.0.2, < 6.0)
|
||||||
|
coffee-script (2.4.1)
|
||||||
|
coffee-script-source
|
||||||
|
execjs
|
||||||
|
coffee-script-source (1.11.1)
|
||||||
|
colorator (1.1.0)
|
||||||
|
commonmarker (0.23.6)
|
||||||
|
concurrent-ruby (1.1.10)
|
||||||
|
dnsruby (1.61.9)
|
||||||
|
simpleidn (~> 0.1)
|
||||||
|
em-websocket (0.5.3)
|
||||||
|
eventmachine (>= 0.12.9)
|
||||||
|
http_parser.rb (~> 0)
|
||||||
|
ethon (0.15.0)
|
||||||
|
ffi (>= 1.15.0)
|
||||||
|
eventmachine (1.2.7)
|
||||||
|
execjs (2.8.1)
|
||||||
|
faraday (2.6.0)
|
||||||
|
faraday-net_http (>= 2.0, < 3.1)
|
||||||
|
ruby2_keywords (>= 0.0.4)
|
||||||
|
faraday-net_http (3.0.1)
|
||||||
|
ffi (1.15.5)
|
||||||
|
forwardable-extended (2.6.0)
|
||||||
|
gemoji (3.0.1)
|
||||||
|
github-pages (227)
|
||||||
|
github-pages-health-check (= 1.17.9)
|
||||||
|
jekyll (= 3.9.2)
|
||||||
|
jekyll-avatar (= 0.7.0)
|
||||||
|
jekyll-coffeescript (= 1.1.1)
|
||||||
|
jekyll-commonmark-ghpages (= 0.2.0)
|
||||||
|
jekyll-default-layout (= 0.1.4)
|
||||||
|
jekyll-feed (= 0.15.1)
|
||||||
|
jekyll-gist (= 1.5.0)
|
||||||
|
jekyll-github-metadata (= 2.13.0)
|
||||||
|
jekyll-include-cache (= 0.2.1)
|
||||||
|
jekyll-mentions (= 1.6.0)
|
||||||
|
jekyll-optional-front-matter (= 0.3.2)
|
||||||
|
jekyll-paginate (= 1.1.0)
|
||||||
|
jekyll-readme-index (= 0.3.0)
|
||||||
|
jekyll-redirect-from (= 0.16.0)
|
||||||
|
jekyll-relative-links (= 0.6.1)
|
||||||
|
jekyll-remote-theme (= 0.4.3)
|
||||||
|
jekyll-sass-converter (= 1.5.2)
|
||||||
|
jekyll-seo-tag (= 2.8.0)
|
||||||
|
jekyll-sitemap (= 1.4.0)
|
||||||
|
jekyll-swiss (= 1.0.0)
|
||||||
|
jekyll-theme-architect (= 0.2.0)
|
||||||
|
jekyll-theme-cayman (= 0.2.0)
|
||||||
|
jekyll-theme-dinky (= 0.2.0)
|
||||||
|
jekyll-theme-hacker (= 0.2.0)
|
||||||
|
jekyll-theme-leap-day (= 0.2.0)
|
||||||
|
jekyll-theme-merlot (= 0.2.0)
|
||||||
|
jekyll-theme-midnight (= 0.2.0)
|
||||||
|
jekyll-theme-minimal (= 0.2.0)
|
||||||
|
jekyll-theme-modernist (= 0.2.0)
|
||||||
|
jekyll-theme-primer (= 0.6.0)
|
||||||
|
jekyll-theme-slate (= 0.2.0)
|
||||||
|
jekyll-theme-tactile (= 0.2.0)
|
||||||
|
jekyll-theme-time-machine (= 0.2.0)
|
||||||
|
jekyll-titles-from-headings (= 0.5.3)
|
||||||
|
jemoji (= 0.12.0)
|
||||||
|
kramdown (= 2.3.2)
|
||||||
|
kramdown-parser-gfm (= 1.1.0)
|
||||||
|
liquid (= 4.0.3)
|
||||||
|
mercenary (~> 0.3)
|
||||||
|
minima (= 2.5.1)
|
||||||
|
nokogiri (>= 1.13.6, < 2.0)
|
||||||
|
rouge (= 3.26.0)
|
||||||
|
terminal-table (~> 1.4)
|
||||||
|
github-pages-health-check (1.17.9)
|
||||||
|
addressable (~> 2.3)
|
||||||
|
dnsruby (~> 1.60)
|
||||||
|
octokit (~> 4.0)
|
||||||
|
public_suffix (>= 3.0, < 5.0)
|
||||||
|
typhoeus (~> 1.3)
|
||||||
|
html-pipeline (2.14.3)
|
||||||
|
activesupport (>= 2)
|
||||||
|
nokogiri (>= 1.4)
|
||||||
|
http_parser.rb (0.8.0)
|
||||||
|
i18n (0.9.5)
|
||||||
|
concurrent-ruby (~> 1.0)
|
||||||
|
jekyll (3.9.2)
|
||||||
|
addressable (~> 2.4)
|
||||||
|
colorator (~> 1.0)
|
||||||
|
em-websocket (~> 0.5)
|
||||||
|
i18n (~> 0.7)
|
||||||
|
jekyll-sass-converter (~> 1.0)
|
||||||
|
jekyll-watch (~> 2.0)
|
||||||
|
kramdown (>= 1.17, < 3)
|
||||||
|
liquid (~> 4.0)
|
||||||
|
mercenary (~> 0.3.3)
|
||||||
|
pathutil (~> 0.9)
|
||||||
|
rouge (>= 1.7, < 4)
|
||||||
|
safe_yaml (~> 1.0)
|
||||||
|
jekyll-avatar (0.7.0)
|
||||||
|
jekyll (>= 3.0, < 5.0)
|
||||||
|
jekyll-coffeescript (1.1.1)
|
||||||
|
coffee-script (~> 2.2)
|
||||||
|
coffee-script-source (~> 1.11.1)
|
||||||
|
jekyll-commonmark (1.4.0)
|
||||||
|
commonmarker (~> 0.22)
|
||||||
|
jekyll-commonmark-ghpages (0.2.0)
|
||||||
|
commonmarker (~> 0.23.4)
|
||||||
|
jekyll (~> 3.9.0)
|
||||||
|
jekyll-commonmark (~> 1.4.0)
|
||||||
|
rouge (>= 2.0, < 4.0)
|
||||||
|
jekyll-default-layout (0.1.4)
|
||||||
|
jekyll (~> 3.0)
|
||||||
|
jekyll-feed (0.15.1)
|
||||||
|
jekyll (>= 3.7, < 5.0)
|
||||||
|
jekyll-gist (1.5.0)
|
||||||
|
octokit (~> 4.2)
|
||||||
|
jekyll-github-metadata (2.13.0)
|
||||||
|
jekyll (>= 3.4, < 5.0)
|
||||||
|
octokit (~> 4.0, != 4.4.0)
|
||||||
|
jekyll-include-cache (0.2.1)
|
||||||
|
jekyll (>= 3.7, < 5.0)
|
||||||
|
jekyll-mentions (1.6.0)
|
||||||
|
html-pipeline (~> 2.3)
|
||||||
|
jekyll (>= 3.7, < 5.0)
|
||||||
|
jekyll-optional-front-matter (0.3.2)
|
||||||
|
jekyll (>= 3.0, < 5.0)
|
||||||
|
jekyll-paginate (1.1.0)
|
||||||
|
jekyll-readme-index (0.3.0)
|
||||||
|
jekyll (>= 3.0, < 5.0)
|
||||||
|
jekyll-redirect-from (0.16.0)
|
||||||
|
jekyll (>= 3.3, < 5.0)
|
||||||
|
jekyll-relative-links (0.6.1)
|
||||||
|
jekyll (>= 3.3, < 5.0)
|
||||||
|
jekyll-remote-theme (0.4.3)
|
||||||
|
addressable (~> 2.0)
|
||||||
|
jekyll (>= 3.5, < 5.0)
|
||||||
|
jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
|
||||||
|
rubyzip (>= 1.3.0, < 3.0)
|
||||||
|
jekyll-sass-converter (1.5.2)
|
||||||
|
sass (~> 3.4)
|
||||||
|
jekyll-seo-tag (2.8.0)
|
||||||
|
jekyll (>= 3.8, < 5.0)
|
||||||
|
jekyll-sitemap (1.4.0)
|
||||||
|
jekyll (>= 3.7, < 5.0)
|
||||||
|
jekyll-swiss (1.0.0)
|
||||||
|
jekyll-theme-architect (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-cayman (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-dinky (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-hacker (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-leap-day (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-merlot (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-midnight (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-minimal (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-modernist (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-primer (0.6.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-github-metadata (~> 2.9)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-slate (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-tactile (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-theme-time-machine (0.2.0)
|
||||||
|
jekyll (> 3.5, < 5.0)
|
||||||
|
jekyll-seo-tag (~> 2.0)
|
||||||
|
jekyll-titles-from-headings (0.5.3)
|
||||||
|
jekyll (>= 3.3, < 5.0)
|
||||||
|
jekyll-watch (2.2.1)
|
||||||
|
listen (~> 3.0)
|
||||||
|
jemoji (0.12.0)
|
||||||
|
gemoji (~> 3.0)
|
||||||
|
html-pipeline (~> 2.2)
|
||||||
|
jekyll (>= 3.0, < 5.0)
|
||||||
|
kramdown (2.3.2)
|
||||||
|
rexml
|
||||||
|
kramdown-parser-gfm (1.1.0)
|
||||||
|
kramdown (~> 2.0)
|
||||||
|
liquid (4.0.3)
|
||||||
|
listen (3.7.1)
|
||||||
|
rb-fsevent (~> 0.10, >= 0.10.3)
|
||||||
|
rb-inotify (~> 0.9, >= 0.9.10)
|
||||||
|
mercenary (0.3.6)
|
||||||
|
mini_portile2 (2.8.0)
|
||||||
|
minima (2.5.1)
|
||||||
|
jekyll (>= 3.5, < 5.0)
|
||||||
|
jekyll-feed (~> 0.9)
|
||||||
|
jekyll-seo-tag (~> 2.1)
|
||||||
|
minitest (5.16.3)
|
||||||
|
nokogiri (1.13.9)
|
||||||
|
mini_portile2 (~> 2.8.0)
|
||||||
|
racc (~> 1.4)
|
||||||
|
octokit (4.25.1)
|
||||||
|
faraday (>= 1, < 3)
|
||||||
|
sawyer (~> 0.9)
|
||||||
|
pathutil (0.16.2)
|
||||||
|
forwardable-extended (~> 2.6)
|
||||||
|
public_suffix (4.0.7)
|
||||||
|
racc (1.6.0)
|
||||||
|
rb-fsevent (0.11.2)
|
||||||
|
rb-inotify (0.10.1)
|
||||||
|
ffi (~> 1.0)
|
||||||
|
rexml (3.2.5)
|
||||||
|
rouge (3.26.0)
|
||||||
|
ruby2_keywords (0.0.5)
|
||||||
|
rubyzip (2.3.2)
|
||||||
|
safe_yaml (1.0.5)
|
||||||
|
sass (3.7.4)
|
||||||
|
sass-listen (~> 4.0.0)
|
||||||
|
sass-listen (4.0.0)
|
||||||
|
rb-fsevent (~> 0.9, >= 0.9.4)
|
||||||
|
rb-inotify (~> 0.9, >= 0.9.7)
|
||||||
|
sawyer (0.9.2)
|
||||||
|
addressable (>= 2.3.5)
|
||||||
|
faraday (>= 0.17.3, < 3)
|
||||||
|
simpleidn (0.2.1)
|
||||||
|
unf (~> 0.1.4)
|
||||||
|
terminal-table (1.8.0)
|
||||||
|
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||||
|
thread_safe (0.3.6)
|
||||||
|
typhoeus (1.4.0)
|
||||||
|
ethon (>= 0.9.0)
|
||||||
|
tzinfo (1.2.10)
|
||||||
|
thread_safe (~> 0.1)
|
||||||
|
tzinfo-data (1.2022.5)
|
||||||
|
tzinfo (>= 1.0.0)
|
||||||
|
unf (0.1.4)
|
||||||
|
unf_ext
|
||||||
|
unf_ext (0.0.8.2)
|
||||||
|
unicode-display_width (1.8.0)
|
||||||
|
wdm (0.1.1)
|
||||||
|
zeitwerk (2.6.1)
|
||||||
|
|
||||||
|
PLATFORMS
|
||||||
|
ruby
|
||||||
|
|
||||||
|
DEPENDENCIES
|
||||||
|
github-pages
|
||||||
|
jekyll-feed (~> 0.6)
|
||||||
|
minima (~> 2.0)
|
||||||
|
tzinfo (~> 1.2)
|
||||||
|
tzinfo-data
|
||||||
|
wdm (~> 0.1.0)
|
||||||
|
|
||||||
|
BUNDLED WITH
|
||||||
|
2.1.4
|
15
docs/_config.yml
Normal file
15
docs/_config.yml
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
title: Actix-Admin
|
||||||
|
remote_theme: just-the-docs/just-the-docs
|
||||||
|
#email: your-email@example.com
|
||||||
|
description: >-
|
||||||
|
Actix-Admin Documentation
|
||||||
|
baseurl: ""
|
||||||
|
url: ""
|
||||||
|
#twitter_username: jekyllrb
|
||||||
|
github_username: mgugger
|
||||||
|
|
||||||
|
# Build settings
|
||||||
|
markdown: kramdown
|
||||||
|
theme: minima
|
||||||
|
plugins:
|
||||||
|
#- jekyll-feed
|
104
docs/content/getting_started.md
Normal file
104
docs/content/getting_started.md
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
---
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
* See the [example](https://github.com/mgugger/actix-admin/tree/main/example) and run with ```cargo run```.
|
||||||
|
* See the step by [step tutorial](https://github.com/mgugger/actix-admin/tree/main/example/StepbyStep.md)
|
||||||
|
|
||||||
|
## Quick overview
|
||||||
|
|
||||||
|
### Required dependencies in Cargo.toml
|
||||||
|
```
|
||||||
|
sea-orm = { version = "^0.9.1", features = [ "sqlx-sqlite", "runtime-actix-native-tls", "macros" ], default-features = true }
|
||||||
|
actix_admin = { version = "^0.2.0" }
|
||||||
|
```
|
||||||
|
|
||||||
|
### See inlined steps
|
||||||
|
```rust
|
||||||
|
use sea_orm::entity::prelude::*;
|
||||||
|
use serde::{Deserialize, Serialize};
|
||||||
|
use actix_admin::prelude::*;
|
||||||
|
use actix_web::web;
|
||||||
|
use actix_web::App;
|
||||||
|
use actix_web::HttpServer;
|
||||||
|
use sea_orm::entity::prelude::*;
|
||||||
|
use sea_orm::entity::prelude::*;
|
||||||
|
use actix_admin::prelude::*;
|
||||||
|
// 1. Import ActixAdmin
|
||||||
|
use actix_admin::prelude::*;
|
||||||
|
|
||||||
|
// 2. Use DeriveActixAmin* Macros to implement the traits for the model
|
||||||
|
#[derive(Clone, Debug, PartialEq, DeriveEntityModel, Deserialize, Serialize,
|
||||||
|
DeriveActixAdmin, DeriveActixAdminModel, DeriveActixAdminViewModel
|
||||||
|
)]
|
||||||
|
#[sea_orm(table_name = "comment")]
|
||||||
|
pub struct Model {
|
||||||
|
#[sea_orm(primary_key)]
|
||||||
|
#[serde(skip_deserializing)]
|
||||||
|
#[actix_admin(primary_key)]
|
||||||
|
pub id: i32,
|
||||||
|
pub comment: String
|
||||||
|
}
|
||||||
|
impl ActixAdminModelValidationTrait<ActiveModel> for Entity {}
|
||||||
|
impl ActiveModelBehavior for ActiveModel {}
|
||||||
|
|
||||||
|
#[derive(Copy, Clone, Debug, EnumIter, DeriveRelation)]
|
||||||
|
pub enum Relation { }
|
||||||
|
|
||||||
|
// 3. Add actix-admin to the AppState
|
||||||
|
#[derive(Clone)]
|
||||||
|
pub struct AppState {
|
||||||
|
pub db: DatabaseConnection,
|
||||||
|
pub actix_admin: ActixAdmin,
|
||||||
|
}
|
||||||
|
|
||||||
|
// 4. Implement the ActixAdminAppDataTrait for the AppState
|
||||||
|
impl ActixAdminAppDataTrait for AppState {
|
||||||
|
fn get_db(&self) -> &DatabaseConnection {
|
||||||
|
&self.db
|
||||||
|
}
|
||||||
|
|
||||||
|
fn get_actix_admin(&self) -> &ActixAdmin {
|
||||||
|
&self.actix_admin
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 5. Setup the actix admin configuration
|
||||||
|
pub fn create_actix_admin_builder() -> ActixAdminBuilder {
|
||||||
|
let comment_view_model = ActixAdminViewModel::from(Entity);
|
||||||
|
|
||||||
|
let configuration = ActixAdminConfiguration {
|
||||||
|
enable_auth: false,
|
||||||
|
user_is_logged_in: None,
|
||||||
|
login_link: None,
|
||||||
|
logout_link: None,
|
||||||
|
};
|
||||||
|
|
||||||
|
let mut admin_builder = ActixAdminBuilder::new(configuration);
|
||||||
|
admin_builder.add_entity::<AppState, Entity>(&comment_view_model);
|
||||||
|
|
||||||
|
admin_builder
|
||||||
|
}
|
||||||
|
|
||||||
|
// 6. Add to the actix app
|
||||||
|
let actix_admin = create_actix_admin_builder().get_actix_admin();
|
||||||
|
let opt = ConnectOptions::new("sqlite::memory:".to_owned());
|
||||||
|
let conn = sea_orm::Database::connect(opt).unwrap();
|
||||||
|
let app_state = AppState {
|
||||||
|
db: conn,
|
||||||
|
actix_admin: actix_admin,
|
||||||
|
};
|
||||||
|
|
||||||
|
HttpServer::new(move || {
|
||||||
|
App::new()
|
||||||
|
//.app_data(web::Data::new(app_state.clone()))
|
||||||
|
.service(
|
||||||
|
create_actix_admin_builder().get_scope::<AppState>()
|
||||||
|
)
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
## Access
|
||||||
|
The admin interface will be available under /admin/.
|
18
docs/index.md
Normal file
18
docs/index.md
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
---
|
||||||
|
layout: home
|
||||||
|
list_title: ' '
|
||||||
|
---
|
||||||
|
|
||||||
|
The actix-admin crate aims at creating a web admin interface similar to other admin interfaces (such as [flask-admin](https://github.com/flask-admin/flask-admin) in python).
|
||||||
|
|
||||||
|
## Features
|
||||||
|
1. Async: Builds on [sea-orm](https://crates.io/crates/sea-orm) for the database backend
|
||||||
|
2. Macros: Generate the required implementations for models automatically
|
||||||
|
3. Authentication: optionally pass authentication handler to implement authentication for views
|
||||||
|
4. Supports custom validation rules
|
||||||
|
5. Searchable attributes can be specified
|
||||||
|
6. Supports custom views which are added to the Navbar
|
||||||
|
|
||||||
|
## Screenshot
|
||||||
|
|
||||||
|
<img src="https://raw.githubusercontent.com/mgugger/actix-admin/main/static/Screenshot.png"/>
|
Loading…
Reference in New Issue
Block a user