Výpis dát z Mysql… 3 záznamy v jednom riadku

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

Zdravím…

Mám šablónu v ktorej je tento kód

{foreach $Comproducts as $product}
      <div class="row-fluid">
       <div class="span4">
        <div class="product">
         <figure>
          <a n:href=":www:Extension:">
           <img src="http://0.s3.envato.com/files/4758892/andresr01082.jpg" alt="">
           <div class="overlay">
            <i class="icon-eye-open"></i>
           </div>
          </a>
         </figure>
         <article>
          <h5>{$product->product_name} {$product->product_version}</h5>
           <p>
            <span class="price">{$product->product_price} €</span>
           </p>
          <a n:href=":www:Extension:" class="btn">Pridať do košíka</a>
         </article>
        </div>
       </div>
      </div>
      {/foreach}

Problem je v tom, že mi to vyhodí všetky záznamy pod seba miesto toho ja potrebujeme aby to vyhodilo na riadok 3 záznamy. Skúšal som aj

<div class="row-fluid">
        {foreach $Comproducts as $product}
       <div class="span4">
        <div class="product">
         <figure>
          <a n:href=":www:Extension:">
           <img src="http://0.s3.envato.com/files/4758892/andresr01082.jpg" alt="">
           <div class="overlay">
            <i class="icon-eye-open"></i>
           </div>
          </a>
         </figure>
         <article>
          <h5>{$product->product_name} {$product->product_version}</h5>
           <p>
            <span class="price">{$product->product_price} €</span>
           </p>
          <a n:href=":www:Extension:" class="btn">Pridať do košíka</a>
         </article>
        </div>
       </div>
       {/foreach}
      </div>

Lenže ako som zistil

<div class="row-fluid">

je potrebný pre vytvorenie nového riadku ale ja už fakt neviem čo a ako.

prikladám aj ExtensionPresenter.php

<?php
namespace wwwModule;
use ExtensionRepository;
class ExtensionPresenter extends \BasePresenter
{
	/** @var ExtensionRepository */
	private $products_list;
	/** @inject ExtensionRepository */
	public function inject(ExtensionRepository $products_list)
	{
		$this->products_list = $products_list;
	}

	public function renderProduct()
	{
		$this->template->products = $this->products_list->findAll();
	}
}

a ExtensionRepository.php

<?php

class ExtensionRepository extends Nette\Object
{
	/** @var Nette\Database\Connection */
    private $database;

    public function __construct(Nette\Database\Connection $database)
    {
        $this->database = $database;
    }

    public function findAll()
    {
        return $this->database->table('products_list');
    }

    public function findById($id)
    {
        return $this->findAll()->get($id);
    }

    public function insert($values)
    {
        return $this->findAll()->insert($values);
    }
}

Sorry, že nepriložievam aj aké pokusy som stým skúšal Neboli žiadne proste ma nič nenapadne
Ďakujem všetkym vopred.

Tabetha
Člen | 140
+
0
-

ked som to teraz skúšal u seba, tak ten 2. pokus

<div class="row-fluid">
        {foreach $Comproducts as $product}

fungoval normálne, vykreslil mi 3 na stránku … ale jedna otázka, nemôže to byť, že by si ju mal úzku alebo niečo také, že sa ti to nezmestí a preto to dá pod seba?

SontoEremo
Člen | 341
+
0
-

Nazdar Tabetha

Jasne takto to vysvetlím:
v

<div> je class="span8"

normálne je

class="span12"

lenže ja som si pridal aj ľavý layout kde mám kategórie preto class=„span8“ bývali tam 4 ale teraz sa to zmenšilo na 3 max. Aj mne fungovali obe lenže prvý pokus to všetko hádzal pod seba a druhý pokus kde som foreach dal pod

<div class="row-fluid">

Je zas odveci pretože ak tam nemáš ten row-fluid tak to rozhádže ostatné záznamy čiže nie sú pod sebou ale proste úplne mimo preto som písal, že to bez toho row-fluid nespravý nové riadky pod seba.

iguana007
Člen | 970
+
0
-

Pokud dobře chápu, čeho chceš dosáhnout, tak by ti to měl vyřešit iterátor, konkrétně makra first a last. Popsané to najdeš tady: https://latte.nette.org/cs/tags
Na stránce si nechej vyhledat
{first 5}
tam je to popsané, jak se to používá. Tj. ten nový řádek si tam vložíš, každou 3. iteraci, takže místo pětky dáš do těch maker trojku (podle příkladu).

SontoEremo
Člen | 341
+
0
-

Super iguana007 Ďakujem pekne to som si ani nevšimol

Takže pre niekoho do budúcna :)

{foreach $products as $product}
 {first 3}<div class="row-fluid">{/first}
  <div class="span4">
   <div class="product">
    <figure>
    <a n:href="Odkaz">
     <img src="http://0.s3.envato.com/files/4758892/andresr01082.jpg" alt="">
     <div class="overlay">
      <i class="icon-eye-open"></i>
      </div>
    </a>
   </figure>
    <article>
    <h5>{$product->product_name} {$product->product_version}</h5>
     <p>
      <span class="price">{$product->product_price} €</span>
     </p>
    <a n:href=":www:Extension:" class="btn">Pridať do košíka</a>
   </article>
   </div>
  </div>
 {last 3}</div>{/last}
{/foreach}