Class: CellsV1::Table::Cell
- Inherits:
-
Cell
- Object
- Cell
- CellsV1::Table::Cell
- Defined in:
- app/cells/lato_view/cells_v1/table/cell.rb
Overview
Cella Table
Instance Attribute Summary collapse
-
#head ⇒ Object
Funzione che genera l’intestazione della tabella.
-
#rows ⇒ Object
Funzione che stampa tutte le righe della tabella.
Class Method Summary collapse
-
.generate_rows_from_activerecords(activerecords, attributes) ⇒ Object
Funzione che, se il primo parametro e’ il risultato di una query, lo trasforma in un array di array da usare per inizializzare una tabella.
Instance Method Summary collapse
-
#close ⇒ Object
Funzione che stampa la chiusura di una tabella.
-
#initialize(head: nil, rows: nil) ⇒ Cell
constructor
A new instance of Cell.
-
#open ⇒ Object
Funzione che stampa l’apertura di una tabella.
-
#row(position: 0, row: nil) ⇒ Object
Funzione che stampa una riga della tabella * Parametri : - position: posizione della riga da stampare nell’array di righe definito durante l’inizializzazione - row: array che rappresenta la riga da stampare.
- #show ⇒ Object
Constructor Details
#initialize(head: nil, rows: nil) ⇒ Cell
Returns a new instance of Cell.
16 17 18 19 20 21 22 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 16 def initialize(head: nil, rows: nil) # eseguo brevi controlli sull'input raise 'Table Concept: head must be an array' if head and !head.is_a? Array # assegno i valori alle variabili di istanza @head = head @rows = rows if rows && check_rows(rows) end |
Instance Attribute Details
#head ⇒ Object
Funzione che genera l’intestazione della tabella
9 10 11 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 9 def head @head end |
#rows ⇒ Object
Funzione che stampa tutte le righe della tabella
14 15 16 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 14 def rows @rows end |
Class Method Details
.generate_rows_from_activerecords(activerecords, attributes) ⇒ Object
Funzione che, se il primo parametro e’ il risultato di una query, lo trasforma in un array di array da usare per inizializzare una tabella
63 64 65 66 67 68 69 70 71 72 73 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 63 def self.generate_rows_from_activerecords(activerecords, attributes) rows = [] activerecords.each do |activerecord| row = [] attributes.each do |attribute| row.push(activerecord.send(attribute)) end rows.push(row) end rows end |
Instance Method Details
#close ⇒ Object
Funzione che stampa la chiusura di una tabella
57 58 59 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 57 def close '</table>' end |
#open ⇒ Object
Funzione che stampa l’apertura di una tabella
29 30 31 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 29 def open "<table class='table'>" end |
#row(position: 0, row: nil) ⇒ Object
Funzione che stampa una riga della tabella
-
Parametri :
-
position: posizione della riga da stampare nell’array di righe
definito durante l’inizializzazione
-
row: array che rappresenta la riga da stampare
48 49 50 51 52 53 54 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 48 def row(position: 0, row: nil) if position && !@rows.nil? && !@rows[position].nil? @current_row = @rows[position] end @current_row = row if row render 'row.html' end |
#show ⇒ Object
24 25 26 |
# File 'app/cells/lato_view/cells_v1/table/cell.rb', line 24 def show open + head + rows + close end |