Skip to main content

get_fields

Function get_fields 

Source
pub async fn get_fields(
    model_name: String,
    id: Option<String>,
    site: Arc<AdminSite>,
    db: Arc<AdminDatabase>,
) -> Result<FieldsResponse, ServerFnError>
Available on non-WebAssembly only.
Expand description

Get field definitions for dynamic form generation

Retrieves field metadata for creating or editing model instances. When id is provided, also retrieves the existing field values for editing.

§Server Function

This function is automatically exposed as an HTTP endpoint by the #[server_fn] macro. AdminSite and AdminDatabase dependencies are automatically injected via the DI system.

§Example

use reinhardt_admin::server::get_fields;

// Client-side usage for create form
let response = get_fields("User".to_string(), None).await?;
println!("Fields: {:?}", response.fields);

// Client-side usage for edit form
let response = get_fields("User".to_string(), Some("42".to_string())).await?;
println!("Existing values: {:?}", response.values);