Forum > Lazarus e il web

progetto web forum lazaruspascal.it

<< < (2/48) > >>

Stilgar:
Magari fare una cosa ancora più semplice per la versione beta ... solo i tag, niente codice custom ;)

nomorelogic:
tenere una grammatica facile infatti può essere vincente per far avvicinare gente.
però limitarsi a fare quello che fanno altri linguaggi senza le peculiarità del pascal mi sembra uno spreco :)
direi che si può iniziare con la versione facile (non solo per la beta ma per le cose di uso più comune) riservandosi però di usare delle caratteristiche più avanzate (usando grammatiche particolari).

ad esempio certe "uses" necessarie potrebbero essere inserite automaticamente da un pre-compilatore. del resto se l'interprete ne ha bisogno...

aesis:
Sono d'accordo di usare una sintassi semplice..quello che vogliamo è avere un sistema snello, leggibile PASCAL like dove qualsiasi persona può facilmente metterlo in pratica fin da subito. Un'altra cosa comunque da tenere in mente è lo sviluppo di futuri PLUGIN quindi secondo noi avere fin da subito una struttura facilmente integrabile.

La buttiamo lì

creare una pagina tipo prodotti.html.pas

<h1>Prodotti</h1>
 
<table>
  <tr>
    <th>Codice</th>
    <th>Descrizione</th>
    <th></th>
    <th></th>
    <th></th>
  </tr>
 
<%-begin For i := 0 to prodotti.count do %>
  <tr>
    <td><% prodotti.codice%></td>
    <td><% prodotti.descrizione%></td>
    <td><% link_to 'Visualizza', RenderForm('visualizza.html.pas prodotti.codice') %></td>
    <td><% link_to 'Modifica',    RenderForm('modifica.html.pas   prodotti.codice') %></td>
    <td><% link_to 'Cancella',   RenderForm('conferma.html.pas  prodotti.codice') %></td>
  </tr>
<%-end; %>
</table>
 
<br />
 
<%-begin link_to 'Inserisci Prodotto', RenderForm('nuovo.html.pas')%><%-end;%>


Chiaramente dopo bisognerebbe gestire il routing delle pagina.
Poi potremmo avere un css comune per lo stile ed un template tipo

application.html.pas

<html>
... QUI FOGLIO DI STILE SIA PER DESKTOP/MOBILE/ETC
    USO ANCHE DI JS PER PARTICOLARI FUNZIONI TIPO JQUERY ED ALTRI LINGUAGGI
 <body>
      <%-begin renderapp() -end%>   <--- QUA VANNO POI INGLOBATE LE PAGINE tipo prodotti.html.pas
 </body>
</html>

Speriamo di esserci spiegati bene...non ci "insultate"  ;D  ;D  :D

Marco e Samuele




Stilgar:
Io provoco ;) Per stimolare la discussione :D

 
--- Codice: ---
<!-- variabile precaricata dal controller di pagina, dichiarata in modo che possa essere puntata dal motore di rendering -->
<p:object name="prodotti" />

<h1>Prodotti</h1>
<table>
  <tr>
    <th>Codice</th>
    <th>Descrizione</th>
    <th></th>
    <th></th>
    <th></th>
  </tr>
 
<psp:foreach var="prodotto" collection="${prodotti}" status="statusVar">
  <tr>
    <td><psp:out text="${prodotto.codice}"  /></td>
    <td><psp:out text="${prodotti.descrizione}" /></td>
    <td><psp:action id="actionVisualizza" method="visualizzaProdotto" param="${statusVar.index}" /></td>
    <td><psp:action id="actionModifica" method="modificaProdotto"  param="${statusVar.index}" /></td>
    <td><psp:action id="actionProdotto" method="cancellaProdotto"  param="${statusVar.index}" /></td>
  </tr>
</psp:foreach>
</table>
 
<br />
<psp:page>
  <psp:nclude resource="fogliodistileselezionato.css" type="stylesheet" />
  <!-- in alternativa -->
  <psp:nclude resourceAlias="alias-al-foglio-selezionato" />
  <psp:body>
      <psp:include page="prodotto.psp" />
  </psp:body>
</psp:page>

--- Termina codice ---
E jQuery è incluso in modo implicito, e dinamico alla pagina.


--- Codice: ---

type
  TProdottoController = class(TPascalServerPageController)
  published
    procedure visualizzaProdotto(const parameter : TMethodControllerParameter);
    procedure modificaProdotto(const parameter : TMethodControllerParameter);
    procedure cancellaProdotto(const parameter : TMethodControllerParameter);
  end;


--- Termina codice ---

Butto lì. Il controller è caricato dentro un dynamic library (in modo che sia agganciabile al volo ed estendibile il framework).

Stilgar

aesis:
C'è da dire interessante....anche se separerei (spero di non aver capito male)..in un'altra pagina...

<psp:page>
  <psp:nclude resource="fogliodistileselezionato.css" type="stylesheet" />
  <!-- in alternativa -->
  <psp:nclude resourceAlias="alias-al-foglio-selezionato" />
  <psp:body>
      <psp:include page="prodotto.psp" />
  </psp:body>
</psp:page>

Ti faccio una domanda...poi come integriamo tutto con APACHE per esempio?

Siamo molto felici che da un post si è aperta questa discussione e spero quanto prima di iniziare a buttare giù qualche pezzo di codice...(apriremo un google code o github...che dite?) anche se ancora è prematuro..

Marco e Samuele.

Navigazione

[0] Indice dei post

[#] Pagina successiva

[*] Pagina precedente

Vai alla versione completa