L'approccio DRY al "rendering" dei risultati dell'editor del modello di trascinamento della selezione in HTML

0

Sono in procinto di progettare un sistema basato su browser che consentirà agli utenti non tecnici di modificare rapidamente e facilmente il contenuto di alcune parti di una pagina Web tramite un editor drag-and-drop basato su template WYSIWYG. Essenzialmente, l'utente può scegliere tra alcuni modelli preparati, rilasciare alcuni file di immagine in aree predefinite all'interno del modello, modificare alcuni testi o collegamenti in aree predefinite e il risultato si rifletterà sul sito web effettivo.

Ho un semplice prototipo dell'interfaccia dell'editor scritto in Polymer, che funziona benissimo finora. Ora sto cercando di capire il modo migliore per salvare i risultati di questo lato server e produrre l'output HTML statico finale basato su di esso. Sono piuttosto desideroso di mantenere Polymer sul lato client, poiché l'interfaccia è piuttosto complessa e dinamica e gli approcci di puro-Javascript più tradizionali possono diventare molto disordinati molto rapidamente.

Tuttavia, anche gli stessi modelli Polymer sul lato client non sono fattibili, penso; Dovrò produrre un output HTML puro, compatto, non Javascript, altamente compatibile.

La soluzione ovvia sarebbe quella di preparare due parti allo stesso modello: una versione Polymer modificabile che si traduce in un certo numero di attributi memorizzati sul server (ad esempio template: 1, placeholder1: imageXYZ, placeholder2: "Foobar", etc. ), insieme ad un processo di rendering lato server che richiede questi dati e produce l'output HTML finale. Il problema è che questo richiede due versioni dello stesso modello HTML da mantenere sincronizzate.

Un'altra soluzione potrebbe essere quella di produrre alcuni meta-modelli dai quali sia una versione modificabile sia il risultato reso possono essere prodotti a livello di programmazione; questo approccio sembra tuttavia molto complesso, forse troppo complesso per lo scopo di questo progetto.

Esistono altri approcci ben noti per affrontare questo problema, o librerie / sistemi / approcci meta-template ben definiti che funzioneranno bene nel mio scenario? O dovrò semplicemente mordere il proiettile e accettare la ridondanza come parte del compito?

    
posta deceze 07.01.2015 - 03:01
fonte

1 risposta

1

posiziona i modelli di blanc sul server, i client li scaricano e rispondono con una certa configurazione per questo, mantenendo sincronizzati molti client e magari con problemi nel loro modello (bug, ecc.) potrebbero causare più problemi, su (presumo php) server fare un controllo del formato durante l'aggiornamento.

Ik lo mantieni tutto nei template, non c'è nemmeno bisogno di HTML statico, ma poi hai bisogno di una sorta di backend MysQL per generare Page (x) che usa template (y) che ha una collezione di collegamenti immagine e un blocco dati collezioni ecc ...

BTW esistono tutti questi programmi e sono chiamati sistemi di gestione dei contenuti.

    
risposta data 14.01.2015 - 16:57
fonte

Leggi altre domande sui tag