2009-06-07 8 views

Antwort

6

Ich persönlich würde nicht möchten, dass ColdFusion diese Tags enthält, da ich nicht immer HTML ausgabe.

Im Gegensatz zu PHP gibt es auch kein <?coldfusion> Tag oder ähnliches, mit dem Sie angeben, dass CF Ihren Code verarbeiten soll. Alle ColdFusion-Tags haben das Präfix "cf" und können mit normalem HTML-Code durchsetzt sein. Beachten Sie, dass Sie das Tag "<cfoutput>" verwenden müssen, um die Ausgabe auf der Seite zu rendern. dh.

<cfset variables.firstName = 'My Name' /> 
<html> 
<head> 
    <title>ColdFusion Sample</title> 
</head> 
<body> 
Hello <cfoutput>#variables.firstName#</cfoutput> 
</body> 
</html> 
+0

Ich würde auch bemerken, dass cfoutput ColdFusion-Ausdrücke evaluiert und ausgibt und nicht standardmäßig für generisches HTML erforderlich ist (es gibt bestimmte Instanzen, wo es auch für HTML benötigt wird, aber Sie müssen diesen Verarbeitungsmodus explizit aktivieren). –

1

Fügen Sie es in Ihre Quelle ein. Selbst wenn es automatisch hinzugefügt wird (was nicht der Fall ist), benötigen Sie fast immer mehr Kontrolle (zB das Einrichten Ihrer Meta-Tags).

BTW, Sie brauchen nicht einmal diese Tags. Das folgende Snippet sollte in den meisten Browsern korrekt angezeigt werden.

+0

Entschuldigung für die Frage, aber ich bin ziemlich verwirrt mit der verwirrenden Menge von Tags, die CF unterstützt, aber ist CF wie PHP, wo Sie einfach HTML außerhalb einige öffnende Tags wie "

+1

Es gibt keine Notwendigkeit, CF zu leeren, es sei denn, Sie versuchen, die Leistung für bestimmte Seiten zu verbessern (z. B. das Löschen der Header, so dass externe Dokumente schneller geladen werden). – SpliFF

+0

@jeremy: zu beantworten, du bist eine Frage, ja, es ist wie PHP in dieser Hinsicht. CF-Tags werden außerhalb des HTML-Codes verarbeitet, bevor sie an den Browser gesendet werden. –

2

einfachste Weg, ich denke, es kann von explaing ist:

CFML Code ruft, berechnet und zeigt Informationen in einem HTML-Dokument.

Also, wenn Sie einen Rahmen jeder Art verwenden, sind die Header-Datei auf jeder Seite die enthalten würde ..

<HTML> <head></head><body> 

und die Fußzeile Seite würde die umfassen ..

</body> </HTML> 

Natürlich, wie alles, wenn Sie aus irgendeinem Grund wollten, könnten Sie etwas programmieren, um diese auch für Sie auszugeben.

Ich habe CFML gefunden, um die einfachste Syntax zu sein, um in HTML lesbar zu bleiben, und es ist keine große Sache, es so zu lassen.

Hoffe, dass hilft.

1

Sie können ein benutzerdefiniertes Tag erstellen, um dies für Sie zu tun.

<cf_page 
    title = "MyTitle" 
    styles = "base.css,form.css,theme.css" 
    > 

    Main Page Content 

</cf_page> 


Und dann zu machen, dass die Arbeit, erstellen Sie eine page.cfm die ähnlich aussieht:

Zum Beispiel in jeder Seite, die Sie Ihre Standardvorlage wollte, Sie so etwas wie verwenden:

0

Um Ihre Frage zu beantworten, ja, müssen Sie das Markup auf der Seite enthalten.

Wie andere Poster darauf hingewiesen haben, könnte es sich um etwas anderes als HTML handeln, das Sie ausgeben möchten, z. B. ein PDF-Dokument oder JSON. CF macht solche Sachen sehr einfach, was Teil seiner Anziehungskraft ist.

1

Alternativ, gehen Sie für eine grundlegende Templating-Setup und haben (meta.cfm,) header.cfm, sidebar.cfm, footer.cfm und verwenden Sie das <cfinclude template=""> Tag auf jeder Seite. Noch besser: Verwenden Sie ein Framework, um all dies über den Controller zu verwalten, wodurch die Ausgabe von Inhalten in verschiedenen Formaten einfacher wird.

1

Nein, Coldfusion enthält nichts, was Sie nicht sagen.

Für eine allgemeine Seite, die ein HTML/BODY-Tag benötigt (dh nicht ein Stück Code zum Einfügen) können Sie eine beliebige Anzahl benutzerdefinierter Funktionen/Tags zur Ausgabe von HTML/BODY-Tags verwenden Wahrscheinlich können Sie sie einfach eingeben.

Jetzt könnten Sie einige der Kopf-/Fußzeilen-Code verwenden, um sie automatisch einkleben, aber das kann dazu führen, dass mehr Logik sie unter bestimmten Umständen auszuschließen. Das kann übertrieben sein, wenn Sie nach etwas Einfachem suchen.

Hinweis, es gibt einige Widgets, die die CF zur Verfügung stellt, die SOME HTML erzeugen wird. So führt beispielsweise CFTABLE auf einer bestimmten Ebene zu einem TABLE-Tag. Aber dies ist in erster Linie eine Möglichkeit, die Tabellenerstellung zu vereinfachen, während HTML/BODY nicht viel einfacher werden kann.

1

Wenn ... und dies ist eine große IF ... Wenn Sie nicht jede Anfrage mit den öffnenden und schließenden HTML-Tags ablehnen, können Sie sie zu Ihrer Application.cfm/OnRequestEnd.cfm oder Application.cfc hinzufügen .

Application.cfm:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

<html> 
<head> 
    <title>Page title here</title> 
</head> 
<body> 

OnRequestEnd.cfm:

</body> 
</html> 

Oder Application.cfc - OnRequest():

<cffunction name="OnRequest" output="true" returntype="void"> 

    <cfargument name="targetPage" type="string" required="true"> 

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

    <html> 
    <head> 
     <title>Page title here</title> 
    </head> 
    <body> 
     <cfinclude template="#ARGUMENTS.targetPage#"> 
    </body> 
    </html> 

</cffunction> 

Nein, es ist nicht der beste Weg, weil Es ist sehr einschränkend, aber es ist ein anderer Weg! : OD

Verwandte Themen