---
url: "https://vueda.dev/v3/reference/api/py/vueda.core.widgets/BaseArrayWidget.md"
title: "BaseArrayWidget"
---

# BaseArrayWidget

## Overview

Copied from django's BaseCSVWidget.
For our use parsing json and querystrings, which can pass arrays natively.

The surrogate probably doesn't make sense for our use case, but it's here.

## `__init__` {#--init--}

### Signature {#--init---signature}

`__init__(args, kwargs)`

#### Parameters {#--init---parameters}

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| <span id="--init---param-args">args</span> |  | no |  |  |
| <span id="--init---param-kwargs">kwargs</span> |  | no |  |  |

### Source {#--init---source}

`server/vueda/core/widgets.py:23`

## `render` {#render}

Render the widget as an HTML string.

### Signature {#render-signature}

`render(self, name, value, attrs, renderer)`

#### Parameters {#render-parameters}

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| self |  | yes |  |  |
| <span id="render-param-name">name</span> |  | yes |  |  |
| <span id="render-param-value">value</span> |  | yes |  |  |
| <span id="render-param-attrs">attrs</span> |  | no | `None` |  |
| <span id="render-param-renderer">renderer</span> |  | no | `None` |  |

### Source {#render-source}

`server/vueda/core/widgets.py:50`

## `value_from_datadict` {#value_from_datadict}

Given a dictionary of data and this widget's name, return the value
of this widget or None if it's not provided.

### Signature {#value_from_datadict-signature}

`value_from_datadict(self, data, files, name)`

#### Parameters {#value_from_datadict-parameters}

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| self |  | yes |  |  |
| <span id="value_from_datadict-param-data">data</span> |  | yes |  |  |
| <span id="value_from_datadict-param-files">files</span> |  | yes |  |  |
| <span id="value_from_datadict-param-name">name</span> |  | yes |  |  |

### Source {#value_from_datadict-source}

`server/vueda/core/widgets.py:34`

## `media` {#media}

### Source {#media-source}

`.venv/lib/python3.12/site-packages/django/forms/widgets.py:280`

## `surrogate` {#surrogate}

## Source

`server/vueda/core/widgets.py:12`
