formular – vytiahnutie hodnot do selectu
- majo1
- Člen | 103
Zdravim, prosim vas, neviem si rady, ako vytiahnut z presenteru udaje do
select boxu v latte.
Budem vdacny za vsetky rady.
v Presenteri mam vytvoreny formular so selectom.
Select sa naplna vytiahnutim dat z DB (nasledne fetchPairs).
protected function createComponentEditorForm()
{
$result = $this->stationsManager->getCenters();
$centers = $result->fetchPairs('idcenter', 'centerName');
$form = new Form;
$form->addHidden('idstation');
$form->addSelect('center_idcenter', 'Stredisko:', $centers);
$form->addText('city', 'Mesto*')->setRequired();
$form->addText('description', 'Popis');
$form->addText('departureTime', 'Čas odchodu zo zastávky*')
->setRequired();
$form->addSubmit('submit', 'Uložiť zastávku');
$form->onSuccess[] = [$this, 'editorFormSucceeded'];
return $form;
}
dalej v latte manualne vykreslujem formular
<form n:name=editorForm class=form>
<div n:if="$form->hasErrors()" class="callout callout-warning">
<h4>Chyba!</h4>
<p n:foreach="$form->errors as $error">{$error}</p>
</div>
<div class="form-group">
<label n:name=center_idcenter>Stredisko*</label>
<select class="form-control">
<option></option>
</select>
</div>
<div class="input-group">
<label n:name=city>Mesto*
<div class="input-group">
<input class="form-control" n:name=city>
<div class="input-group-addon">
<i class="fa fa-building"></i>
</div>
</div>
</label>
</div>
<div class="input-group">
<label n:name=description>Popis
<div class="input-group">
<input class="form-control" n:name=description>
<div class="input-group-addon">
<i class="fa fa-commenting-o"></i>
</div>
</div>
</label>
</div>
<div class="bootstrap-timepicker">
<div class="form-group">
<label>Čas odchodu zo zastávky*
<div class="input-group">
<input n:name=departureTime type="text" class="form-control timepicker">
<div class="input-group-addon">
<i class="fa fa-clock-o"></i>
</div>
</div>
</label>
</div>
</div>
<p><input n:name=submit class="btn btn-primary"></p>
</form>
Editoval majo1 (29. 1. 2016 10:04)
- majo1
- Člen | 103
aha, taka banalna chyba.. prehliadol som to.
dakujem velmi pekne za radu.
mozno to je trosku OT, ale zapisujem cez ten formular aj cas vo formate HH:MM
(vo formulari ako departureTime)
zapis do db funguje iba v pripade, ze stlpec departureTime je typu timedate.
ale ja by som rad evidoval len cas. ked zvolim typ stlpca TIME, tak tracy hadze
error.
prosim vas, ako sa toto bezne riesi?
dakujem
- majo1
- Člen | 103
upravil som formát času v inpute, teraz zapisovanie nového dátumu do DB funguje.
keď chcem ale upraviť záznam, kde je tento dátum zapásaný,
vypíše nasledovné:
Nette\InvalidArgumentException
Value must be scalar or NULL, object given in field
‚departureTime‘.
neviem, kde môže byť chyba :/
Editoval majo1 (29. 1. 2016 10:02)