热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

利用RubyonRails构建自定义页面-BuildingCustomPageswithRubyonRails

我正在使用RubyonRails构建个人网站。总体而言,RoR是一个非常出色的工具,它提供了丰富的功能和灵活性,使得创建自定义页面变得既高效又便捷。通过利用其强大的框架和模块化设计,我可以轻松实现复杂的功能,同时保持代码的整洁和可维护性。此外,Rails的社区支持也非常强大,为开发过程中遇到的问题提供了丰富的资源和解决方案。

I'm creating a personal site with Ruby on Rails. For the most part, RoR is the perfect tool, allowing for blog posts, comments, etc all rather easy.

我正在使用Ruby on Rails创建一个个人网站。在大多数情况下,RoR是一个完美的工具,允许博客文章,评论等都相当容易。

However, I want to have a few pages that don't require any specific model. An 'About Me' page, for instance, is necessary, and yet doesn't warrant it's own model/controller. In addition, these 'singleton' pages will be linked to from my default layout, and must be accessible even when there are no objects created.

但是,我想要一些不需要任何特定模型的页面。例如,“关于我”页面是必要的,但不保证它自己的模型/控制器。此外,这些“单例”页面将链接到我的默认布局,即使没有创建对象也必须可以访问。

Is there a good way to handle this? I've seen many RoR sites that have single pages while maintaining pretty urls, but never an example of how it's structured. Finally, is it possible to make these single pages dynamic? I'd rather not have static html if at all avoidable.

有没有一个好方法来处理这个?我看过很多RoR网站都有单页,同时保持漂亮的网址,但从来没有一个如何构建它的例子。最后,是否可以使这些单页动态化?如果可以避免的话,我宁愿没有静态HTML。

2 个解决方案

#1


There's a Railscast about this subject which might answer your question:

有一个关于这个主题的Railscast可能会回答你的问题:

http://railscasts.com/episodes/117-semi-static-pages

I've used this solution a few times in my Rails applications.

我在Rails应用程序中使用过几次这个解决方案。

#2


I usually create a "static" controller, for instance an AboutController.

我通常创建一个“静态”控制器,例如AboutController。

ruby script/generate controller about

Then I create as many action as my about pages: index, contact, terms... Then I add a generic route in my routes.rb file.

然后我创建与我的页面一样多的动作:索引,联系人,术语......然后我在routes.rb文件中添加一个通用路由。

map.about 'about/:action', :cOntroller=> "about"

In my pages, I reference a single page as

在我的页面中,我将单个页面引用为

<%= link_to "Contact", about_path(:action => "contact") %>

Because they are static pages, you can also consider to cache them in your controller.

因为它们是静态页面,您还可以考虑将它们缓存在控制器中。

class AboutController 

This architecture fits well for the most part of static pages. If you want "semi-static" pages you might consider to dynamically load the content from the database.

这种架构非常适合静态页面的大部分。如果您需要“半静态”页面,可以考虑动态加载数据库中的内容。


推荐阅读
author-avatar
zf19920222
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有