runique 2.0.0

A Django-inspired web framework for Rust with ORM, templates, and comprehensive security middleware
Documentation
//! `LoginAdmin` — admin login form with username/password fields.
use crate::forms::{Forms, field::RuniqueForm, fields::text::TextField};
use crate::impl_form_access;

/// Admin login form provided by Runique.
///
/// Used automatically by `admin_login_post` in the admin router.
/// Developers don't need to touch this.
#[derive(serde::Serialize, Debug, Clone)]
#[serde(transparent)]
pub struct LoginAdmin {
    pub form: Forms,
}

impl RuniqueForm for LoginAdmin {
    fn register_fields(form: &mut Forms) {
        form.field(&TextField::text("username").label("Username").required());

        form.field(&TextField::password("password").label("Password").required());
    }

    impl_form_access!();
}