我是否必须为每篇博文创建一个页面?

时间:2016-11-23 06:42:33

标签: database url blogs

我正在使用数据库从头开始创建博客。我知道如果我在网址中包含主键,我可以轻松地从数据库中检索信息:

www.url.com/entry?id=1

在这种情况下,返回使用主键1存储的信息。我是否也可以检索这些信息,但没有'条目?id ='?

我想要实现的是提取相同的信息,但网址是

www.url.com/this-is-my-first-entry

有什么办法吗?或者我是否必须使用“这是我的第一个条目”来创建一个页面。作为它的文件名?如果是这样,有没有办法让我的网站自动为每个新条目创建页面?

1 个答案:

答案 0 :(得分:0)

不,您不必为每个网址创建一个网页。

基本上,/entry?id=1/this-is-my-first-entry与网络服务器相同。它只是一条路,服务器并不关心如何处理它。

您的代码必须处理此问题(或者更确切地说,是选择框架的路由组件的规则)。

例如,在轨道中,这是一个明智的选择。这是路由规则。

get '/:page' => 'pages#show'

如果您有此规则,则现在可以请求包含任何名称的网页/this-is-my-first-page/hello-world/you-wont-believe-what-happened-next。所有人都有相同的规则。页面"名称"将映射到参数page。然后你就像处理page一样处理参数id(通过它或其他方式从数据库中获取页面)。