Domanda

Ho problemi con FuseBox 5.5 NOXML e circuiti ...

Ho una struttura che assomiglia a questa.

controller
 app.cfc
model
 main
  act_comm_main.cfm
 monkey
  act_something_else.cfm
view
 main
  dsp_comm_main.cfm
 monkey
  dsp_somethingElse.cfm

Nel file app.cfc ho questo:

<cffunction name="postfuseaction">
    <cfargument name="myFusebox" />
    <cfargument name="event" />

    <!--- do the layout --->
    <cfset myFusebox.do( action="layout.lay_template" ) />

</cffunction>

<cffunction name="main">
    <cfargument name="myFusebox" />
    <cfargument name="event" />

    <!--- do model fuse --->
    <cfset myFusebox.do( action="moneky.act_somethingElse" ) />

    <!--- do model fuse --->
    <cfset myFusebox.do( action="main.act_comm_main" ) />

    <!--- do display fuse and set content variable body --->
    <cfset myFusebox.do( action="main.dsp_comm_main", contentvariable="body" ) />

</cffunction>

</cfcomponent>

Questo non funziona. Ma se lo cambio per avere la cartella di visualizzazione denominata: MainPages Quindi e quindi modificare CFSET MyFuseBox. fare per guardare a mainpages.dsp_comm_main (viene fuori) ma nell'istanza sopra mi dà questo errore:

FUSEAZIONE UNDEFINATA

È stato specificato un fususeaction di dsp_comm_main che non è definito nel circuito principale.

Rimuovo i file analizzati e lascia che FuseBox ricostruisca ma ricevo ancora questo errore.

Quindi so come aggirarlo nominando le mie directory diverse tra le cartelle del modello e di visualizzazione, ma perché sta accadendo e cosa posso fare per risolvere le stesse directory nominate attraverso la vista del modello?

È stato utile?

Soluzione

Questo perché nei modelli FuseBox e le viste sono solo una convenzione per implementare MVC. Tecnicamente non importa solo un circuito, esplicito o implicito.

Il nome del circuito deve essere univoco all'interno dell'applicazione, quindi è necessario nominare le cartelle in modo diverso.

Personaly Ho usato la denominazione come vMain/mMain, vMonkey/mMonkey Per app più complesse con molti circuiti di visualizzazione. Per app più semplici potrebbe essere sufficiente per avere layout e display Visualizza i circuiti, in questo modo i modelli possono essere nominati senza prefisso.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top