Frage

Ich bin mit der Tabellenklasse, die für mich eine Tabelle aus einer Reihe von Daten aus meiner Datenbank.

gezogen generiert automatisch

Modell :

function get_reports_by_user_id($userid)
{
    return $this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
}

Controller :

function index()
{
    echo $this->table->generate($this->mymodel->get_reports_by_user_id('1234'));
}

Die Steuerung wird schließlich zu einer Ansicht bewegt werden, wenn ich daran zu arbeiten haben. Dies erzeugt den Tisch ganz gut, aber ich möchte einen Link zu einem Feld hinzufügen. Zum Beispiel kann die id Spalte, die mich auf eine Seite von Daten zu verknüpfen erlauben würden, für nur id dass der Bericht des. Ich weiß, ich kann es einfach Ausgang den Tisch auf die altmodische Weise mit der Hand. Dann kann ich hinzufügen, was Links, die ich will, aber ich würde gerne in der Lage sein, die Auto-Generation so viel wie möglich zu verwenden. Es muss ein Weg sein, etwas so häufig wie die Verknüpfung eine Tabellenzelle zu tun. Hat jemand irgendwelche Ideen?

Bearbeiten :

Benutzer Java PHP hat es meist rechts unten. Hier ist der Code, der es macht Arbeit:

function get_reports_by_user_id($userid)
{
    $rows = $this->db->get_where('ss2_report',array('userid' => $userid))->result_array();

    foreach ($rows as $count => $row)
    {
        $rows[$count]['id'] = anchor('report/'.$row['id'],$row['id']);
    }
    return $rows;
}

Ich brauche nur den Wert in der ursprünglichen Anordnung mit der Anchor-Text-Version zu ersetzen.

War es hilfreich?

Lösung

Der einzige Weg ist, in der Funktion get_reports_by_user_id(), würden Sie eine Schleife durch alle Ergebnisse und die <a href> Tag zu den IDs hinzufügen. So etwas wie folgt aus:

function get_reports_by_user_id($userid)
{
   $rows=$this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
   foreach ($rows as $row)
   {
     $row->id=anchor('site.com/some_controller/some_function/'.$row->id,$row->id);
   }
   return $rows;
}

Ich benutze keine CodeIgniter Datenbank Bibliothek so ich bin nicht sicher, welches Format es gibt $rows in, aber der Code oben sollten Sie die allgemeine Vorstellung von dem, was Sie tun müssen.

Andere Tipps

Eine Idee könnte sein, etwas zu tun ..

foreach ($row in $this->mymodel->get_reports_by_user_id('1234'))
{
    $row->id = anchor(site_url(array('report', 'user', $row->id)), $row->id);
    $this->table->add_row($row);
}
$this->table->generate();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top