2013-03-08 44 views
0

这里是我将如何组织一个网站clothes.com在PHP中的例子:需要帮助组织我的文件和航线西纳特拉(将旧的PHP网站西纳特拉)

index.php 
style/ 
    style.css 
men/ 
    index.php 
    style/ 
    style.css 
women/ 
    index.php 
    style/ 
    style.css 

你会如何安排Sinatra的这个网站?我很困惑,因为西纳特拉似乎并没有太多的工作用“文件夹”的结构,但是你最好别在同一个文件的路径:

get '/' do 
    haml :index 
end 

get 'men' do 
    haml :men 
end 

get 'women' do 
    haml :women 
end 

的问题是,一切都只是进入同一“公共“文件夹使用此模型。这是它应该组织的方式吗?

你将如何组织样式表文件,每个索引,男性,女性都有不同的样式表文件?他们是否也应该进入相同的“公共”文件夹?

+0

'men/index.php'和'women/index.php'有什么区别?你确定你的PHP应用程序结构合理吗? – 2013-03-08 17:26:11

+0

@MladenJablanović男性网站位于men/index.php和women/index.php中的女性网站(通用主网站位于index.php根目录)我不确定这是否是好的,我总是做到了。如果您有更好的Sinatra网站组织的想法,请随时发布评论/答案! :) – user2015453 2013-03-08 17:28:12

+0

我在问两个文件中的PHP代码。男性和女性的编程逻辑是不同的吗? (而不是像'index.php?category = men'和'index.php?category = women')为了得到一个好的答案,你应该尽可能的描述你的编程领域。 – 2013-03-08 17:32:53

回答

1

要说实话,来自PHP 的是难。

对您的网站有一些注意事项。你想保持你的旧网站结构?如果是的话,你将不得不使用西纳特拉相同的路线:

get '/index.php' do 
    haml :index 
end 

get '/men/index.php' do 
    haml :men 
end 

get '/women/index.php' do 
    haml :women 
end 

然后,你还必须把你的样式文件到相应的公共文件夹:

/public 
    /style 
    style.css 
    /men 
    /style 
     style.css 
    /women 
    /style 
     style.css 

或者你从这些老重定向文件夹只是一个文件夹,如果你想保持你的旧风格的路径:

get '/men/stye/style.css' do 
    redirect '/style/men_style.css' 
end 

fet '/women/style/style.css' do 
    redirect '/style/men_style.css' 
end 

如果你写的所有新HAML模板,你可以直接把它们放进/public文件夹。

请记住,当您在haml模板中通过style.css(没有任何路径)调用样式文件时,Sinatra会先检查/public/style.css,然后再检查路线。

0

我一直使用下面的模板为我的末日项目: Sinatra Github project template

编辑:如果您在文件夹路径看,你会看到他使用的init.rb文件,要求他的其他途径。

而且,我平时组织我的CSS是这样的:

public/ 
    css/ 
     main.css 
     men.css 
     women.css 

如果css文件夹中有太多的css文件,我通常会做这样的事情:

public/ 
    css/ 
     men/ 
      men.css 
      more.css 
      evenmore.css 
     women/ 
      women.css