skipFirst nefunguje v addSelect

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
saimons
Člen | 293
+
0
-

Mohl bych se zeptat proc mi nefunguje skipFirst()?

<?php

//model
    public function showTypeNews() {
        return $this->connection->query('SELECT name AS typ, typeNewsID AS id FROM typenews ORDER BY name ASC');
    }

//presenter
  protected function createComponentNewsForm()
    {
        $news = new Admin_NewsModels();
        $form = new NAppForm;

        $form->addSelect('typeNews', 'Kategorie:', $news->showTypeNews()->fetchPairs('id', 'typ'))
            ->skipFirst()
            ->addRule(NForm::FILLED, 'Vyberte kategorii');

?>

Kdyz totakhle vypisu tak se mi zobrazi pouze veci z DB a nenastavi se tam prvni volna mezera.

Editoval saimons (28. 4. 2010 19:29)

Ondřej Mirtes
Člen | 1536
+
0
-

Nejdřív přidej pravidlo, až pak skipFirst().

redhead
Člen | 1313
+
0
-

To neznamená, že se vloží prázdný prvek, ale že se 1. prvek v poli co předáváš nebude brát jako hodnota..

EDIT:
@Ondřej Mirtes: Na pořadí myslím nezáleží.

$form->addSelect('typeNews', 'Kategorie:', array('Vyberte...') + $news->showTypeNews()->fetchPairs('id', 'typ'))
            ->skipFirst()
            ->addRule(NForm::FILLED, 'Vyberte kategorii');

Editoval redhead (28. 4. 2010 19:43)

despiq
Člen | 320
+
0
-

skipFirst() preci znamena ze se tam prida volne pole ale jeste bych do toho neco dal
skipFirst(‚neco‘)

EDIT: tak moje chyba skipFirst() je co pise redhead a kdyz se do toho prida text tak to jeden option prida

Editoval despiq (28. 4. 2010 22:40)

redhead
Člen | 1313
+
0
-

kdyz se do toho prida text tak to jeden option prida

To jsem zas nevěděl já. Výtečně!

saimons
Člen | 293
+
0
-

Diky za rady, ted uz v tom mam poradek.