热门标签 | 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.

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


推荐阅读
  • 访问一个网页的全过程
    准备:DHCPUDPIP和以太网启动主机,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此ISP(Intern ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 实用正则表达式有哪些
    小编给大家分享一下实用正则表达式有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • 在寻找轻量级Ruby Web框架的过程中,您可能会遇到Sinatra和Ramaze。两者都以简洁、轻便著称,但它们之间存在一些关键区别。本文将探讨这些差异,并提供详细的分析,帮助您做出最佳选择。 ... [详细]
  • KMP算法是处理字符串匹配的一种高效算法它首先用O(m)的时间对模板进行预处理,然后用O(n)的时间完成匹配。从渐进的意义上说,这样时间复 ... [详细]
  • 本文旨在提供一套高效的面试方法,帮助企业在短时间内找到合适的产品经理。虽然观点较为直接,但其方法已被实践证明有效,尤其适用于初创公司和新项目的需求。 ... [详细]
  • 深入解析Java枚举及其高级特性
    本文详细介绍了Java枚举的概念、语法、使用规则和应用场景,并探讨了其在实际编程中的高级应用。所有相关内容已收录于GitHub仓库[JavaLearningmanual](https://github.com/Ziphtracks/JavaLearningmanual),欢迎Star并持续关注。 ... [详细]
  • 深入理解ExtJS:从入门到精通
    本文详细介绍了ExtJS的功能及其在大型企业前端开发中的应用。通过实例和详细的文件结构解析,帮助初学者快速掌握ExtJS的核心概念,并提供实用技巧和最佳实践。 ... [详细]
  • 在编译BSP包过程中,遇到了一个与 'gets' 函数相关的编译错误。该问题通常发生在较新的编译环境中,由于 'gets' 函数已被弃用并视为安全漏洞。本文将详细介绍如何通过修改源代码和配置文件来解决这一问题。 ... [详细]
  • 优化SQL Server批量数据插入存储过程的实现
    本文介绍了一种改进的SQL Server存储过程,用于生成批量插入语句。该方法不仅提高了性能,还支持单行和多行模式,适用于SQL Server 2005及以上版本。 ... [详细]
  • 本文将详细介绍通过CAS(Central Authentication Service)实现单点登录的原理和步骤。CAS由耶鲁大学开发,旨在为多应用系统提供统一的身份认证服务。文中不仅涵盖了CAS的基本架构,还提供了具体的配置实例,帮助读者更好地理解和应用这一技术。 ... [详细]
  • 近期我们开发了一款包含天气预报功能的万年历应用,为了满足这一需求,团队花费数日时间精心打造并测试了一个稳定可靠的天气API接口,现正式对外开放。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
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社区 版权所有