Le rotte bonus in stamic differiscono dalle rotte di Laravel standard principalmente nell'uso previsto, l'integrazione con il sistema di contenuti di StatAmic e la priorità che detiene nella risoluzione di routing.
I percorsi bonus in stamic sono progettati per semplificare l'aggiunta di percorsi extra relativi alle raccolte e alle tassonomie senza URL di codifica hard. Consentono agli sviluppatori di montare e recuperare dinamicamente i dati per percorsi come pagine di archivio basate su date, raccolte filtrate o URL di tassonomia personalizzati. Questi percorsi sono definiti utilizzando il metodo `Route :: Bonus (), che è un aiutante specializzato per semplificare il processo di configurazione di routing personalizzato aggiuntivo in cima al sistema di StatMic. I percorsi bonus supportano i tipi come la raccolta e le rotte di tassonomia e possono essere per le visualizzazioni "mostra" (voce specifica o termine) o "indice" (elenco o non specifiche). Ad esempio, i percorsi bonus possono aggiungere una pagina di commenti separati in un post sul blog o creare pagine di archivio per un blog per anno.
Al contrario, le rotte di Laravel standard sono definite nel modo tipico usando il sistema di routing di Laravel (ad esempio, `Route :: get ()`, `Route :: post ()`, ecc.) E gestiscono il routing generale di applicazione indipendente dal contesto del contenuto di Statamic. Le percorsi di Laravel possono essere semplici risposte di chiusura, azioni del controller o integrazioni con il middleware e altre caratteristiche di Laravel. Rappresentano il meccanismo di routing flessibile e fondamentale del framework Laravel stesso.
Una differenza fondamentale relativa alla priorità è che le rotte di Laravel personalizzate, che includono rotte bonus in quanto sono in definitiva percorsi di Laravel, hanno la priorità sul sistema di routing di Statamic. Se un percorso bonus o qualsiasi percorso di Laravel è definito con lo stesso URI di una via statamica, la via di Laravel sostituirà la rotta statamica. Questo aspetto prioritario significa che gli sviluppatori devono evitare di definire le rotte bonus che sono in conflitto direttamente con le rotte statimiche per prevenire le prevalezioni involontarie.
Mentre i percorsi bonus si integrano strettamente con le raccolte e le tassonomie di StatAmic, facilitando i modelli di URL basati su contenuti dinamici, non modificano o interferiscono con il routing intrinseco di StatMic. Rimangono percorsi Laravel sottostanti ma sono personalizzati per i casi di utilizzo statistico. Inoltre, le rotte bonus supportano la memorizzazione nella cache insieme ad altre rotte di Laravel, il che significa che le modifiche di routing possono richiedere aggiornamenti della cache per avere effetto.
I percorsi di Laravel standard sono altamente versatili e utilizzati per qualsiasi logica di percorso all'esterno o insieme a stamic, tra cui percorsi API, reindirizzamenti e qualsiasi esigenza di applicazione personalizzata. Stamic rotta stesse (definite attraverso `Route :: stamic ()`) gestiscono la maggior parte del routing incentrato su CMS automaticamente iniettando middleware, globali, layout e voci di contenuto o termini di tassonomia basati sulla logica di Statemic.
In sintesi, le rotte bonus in stamic servono come uno strato migliorato di percorsi di Laravel che allevia specificamente la gestione delle URL di raccolta e basate sulla tassonomia, mentre le rotte di Laravel standard mantengono la precedenza e la flessibilità del routing generale. Le rotte bonus devono essere accuratamente mappate per evitare lo scontro con le rotte statamiche esistenti poiché le rotte di Laravel sovrascrivono le rotte statimiche per impostazione predefinita nella priorità di routing, garantendo che gli sviluppatori possano controllare quali rotte rispondono per primi.
Questa relazione sfumata consente agli utenti statamici di utilizzare le rotte bonus per estendere facilmente le strutture URL dei contenuti CMS, tornando altrimenti alla logica di routing Laravel convenzionale. Questo equilibrio mantiene la magia di routing basata sul contenuto di StatMic, ma rispetta la priorità generale e le capacità del sistema di routing di Laravel per le esigenze e le sovrascrive personalizzate.