Detail View
This module contains views to implement the Guardrail.
card-style detail view in the Smarter Dashboard.
- class smarter.apps.guardrail.views.detailview.GuardrailDetailView(**kwargs)[source]
Bases:
DocsBaseViewRenders the detail view for a Smarter dashboard guardrail.
This view renders a detailed manifest for a specific guardrail, including its configuration and metadata, in YAML format. It is intended for authenticated users and provides error handling for missing or unsupported guardrail kinds and names.
- Parameters:
- Returns:
Rendered HTML page with guardrail manifest details, or a 404 error page if the guardrail is not found or parameters are invalid.
- Return type:
HttpResponse
Note
The guardrail name and kind must be provided and valid. Otherwise, a “not found” response is returned.
See also
Guardrailfor guardrail metadata retrieval.ApiV1CliDescribeApiViewfor API details.Example usage:
GET /guardrail/detail/?name=my_guardrail&kind=custom
- get(request, *args, **kwargs)[source]
Handle GET requests to render the guardrail manifest detail view.
This method processes the incoming request to retrieve the specified guardrail’s manifest details and renders them in a user-friendly format. It performs validation on the provided guardrail name and kind, retrieves the guardrail metadata, and handles any errors that may arise during this process.
Process: 1. Extract and validate ‘name’ and ‘kind’ from kwargs. 2. Retrieve the guardrail metadata using the provided name and user context. 3. If the guardrail is found, call the API view to get the guardrail details 4. Convert the JSON response to YAML format for better readability. 5. Render the guardrail manifest detail template with the retrieved data. 6. Handle any errors that occur during the process and return appropriate error responses.
- Parameters:
- Returns:
Rendered HTML page with guardrail manifest details, or an error response if the guardrail is not found or parameters are invalid.
- Return type: