View now has no Alpine.

master
Zed A. Shaw 3 days ago
parent 351b2d40d0
commit 1dba6e60e8
  1. 2
      views/admin/table/contents.html
  2. 28
      views/admin/table/view.html

@ -39,7 +39,7 @@
<tr class="table-row"> <tr class="table-row">
{{ range $header := .headers }} {{ range $header := .headers }}
<td> <td>
<a style='text-decoration: none' href='/admin/table/{{ $.table }}/${item.Id}/'> <a style='text-decoration: none' href='/admin/table/{{ $.table }}/${item.Id}'>
${item["{{$header}}"]} ${item["{{$header}}"]}
</a> </a>
</td> </td>

@ -1,17 +1,31 @@
<!-- HAS_ALPINE --> <!-- HAS_ALPINE -->
<h1><a href="/admin/table/{{ .table }}/">&laquo;</a>Admin {{ .table }}</h1>
<block x-data="{item: {}}" <script>
x-init="item = await GetJson('/api/admin/table/{{ .table }}/{{ .id }}')">
$boot(async () => {
let item = await GetJson('/api/admin/table/{{ .table }}/{{ .id }}');
let data = [];
for(let key of Object.keys(item)) {
data.push({key, value: item[key]});
}
$render_data('data-template', 'data-form', data);
});
</script>
<h1><a href="/admin/table/{{ .table }}/">&laquo;</a>Admin {{ .table }}</h1>
<block>
<form method="POST" action="/api/admin/table/{{ .table }}/{{ .id }}"> <form method="POST" action="/api/admin/table/{{ .table }}/{{ .id }}">
<card> <card>
<top><h1>{{ .table }} : {{ .id }}</h1></top> <top><h1>{{ .table }} : {{ .id }}</h1></top>
<middle> <middle id="data-form">
<template x-for="(value, key) in item"> <template id="data-template">
<div> <div>
<label x-text="key" x-bind:for="key"></label> <label for="${item.key}">${item.key}</label>
<input x-bind:name="key" x-text="value" x-model="item[key]" x-bind:id="key" /> <input name="${item.key}" value="${item.value}" />
</div> </div>
</template> </template>
</middle> </middle>

Loading…
Cancel
Save