条件处理与单独页面 - 哪个有意义?

时间:2014-05-20 13:45:34

标签: html css coldfusion

我正在网站上构建资源部分,该部分将向人们展示不同的信息,例如指南,博客,公司文档。显然,这些不同的信息类型中的每一种都需要在页面上具有不同的布局和感觉。博客页面非常随意,而公司文档则非常正式。

它让我思考:

  1. 我是否应该有单独的页面来处理不同的信息 例如blog.htm,document.htm,guides.htm
  2. OR 我是否应该有一个名为information.cfm的动态页面,例如,它将使用条件逻辑以不同方式显示每种信息类型。所以类似:
  3. <cfif URL.DocType = 'Guide'> // Show layout/divs appropriate for Guides <cfelseif URL.DocType = 'Corporate'> // Show layout/divs appropriate for Corporate documents </cfif>

    第二种选择对我个人来说最有意义,但这是正确的吗?

2 个答案:

答案 0 :(得分:1)

我建议检查FW / 1或任何其他MVC框架,你不应该重新发明轮子,这一切都已经完成:

https://github.com/framework-one/fw1

答案 1 :(得分:1)

看起来您有一些可能的纸张类型(让我们将它们渲染为两种特定类型)。

您在页面上有一系列链接:

链接看起来像这样:

super professional paper 
bloggie type paper
another super duper pro-paper
something real formal
something personal-able and bloggie-ish

所以说你有index.cfm,并且你还有header.cfmfooter.cfmindex.cfm标题将等待网址var:url.professionalPaper,它将等于0或1,具体取决于您构建的链接(见下文)情况,如果它是&#39; 0&#39; 0它是专业的&#39;如果它是&#39; 1&#39;它是&#39; bloggie&#39;。

<cfinclude template="header.cfm"> in your index.cfm file and 

header.cfm中放了这个:

<cfparam name="url.professionalPaper" default="-1">

违反了&#39; -1&#39;意味着什么都不期待&#39;你想的就要来了。)

您将拥有一个链接列表...您的链接列表将按如下方式构建:

<a href="?professionalPaper=0&paperID=1234">professionalPaper</a><br>
<a href="?professionalPaper=1&paperID=1111">something personalable and bloggie</a>

如果您想使用当前index.cfm的网页,可以执行以下操作:

<cfif structkeyExists(url,"paperID")>
    Hi you are reading a paper...but which one?
    <cfswitch expression="#url.professionalPaper#">
        <cfcase value="0">
            Yep we are a pro-paper just out the professional!
        </cfcase>
        <cfcase value="1">
            This is a touchy feel blog post.  I feel weepy.
        </cfcase>
        <cfdefaultcase>
            Wait what?  -1 in url.professionalPaper you need to pick a paper!
        </cfdefaultcase>
    </cfswitch>
</cfif>
<br>
Here are some links:<br>
<a href="?professionalPaper=0&paperID=1234">professionalPaper</a><br>
<a href="?professionalPaper=1&paperID=1111">something personal-able and bloggie</a>

这是基本前提......你可以改变它以满足你的需要。

如果你想把它指向一个抓住页面,比如说:pages.cfm,那就改变你的链接。

<a href="pages.cfm?professionalPaper=0&paperID=1234">professionalPaper</a><br>
<a href="pages.cfm?professionalPaper=1&paperID=1111">something personalable and bloggie</a>

将其余逻辑填入该页面。这样你就可以在index.cfm中找到链接,在pages.cfm中有你的页面逻辑。

然后你的defaultcase语句可以这样读:

<cfdefaultcase>
    Wait what?  -1 in url.professionalPaper you need to need to go back (link to go back to your index.cfm page of links).
</cfdefaultcase>

This is a high level treatment but I think you get the gist and I bet you can build on it too :)
相关问题