工具:radrails,用得比较多的RESTful
创建一个project:bbs,并创建数据库bbs。
一、创建板块:论坛板块字段包括板块名称、简介、主题数、文章数、最新发表的帖子(在下面才创建)等。
用rabrails创建scaffold_resource:scaffold_resource board name:string desc:text topic_count:integer post_count:integer post_id:integer 运行后,板块部分基本的框架都已经生成了。
二、创建主题:主题包括标题、作者、点击数、回复数、最新回复帖子(在下面才创建)等。
创建scaffold_resource:scaffold_resource topic title:string user_id:integer read_count:integer post_count:integer post_id:integer。
board与topic是一对多的关系,所以修改model board 和 topic:
board.rb 代码
- class Board < ActiveRecord::Base
- has_many :topics
-
- end
topic.rb 代码
- class Topic < ActiveRecord::Base
- belongs_to :board
-
- def init #应该是初始化的工作,但刚接触不久,不清楚怎样搞,用方法
- self.reply_count=0
- self.read_count =1
- self.post_count = 0
- end
-
- end
另外需要修改config/routes.rb 的topics资源:
config/routes.rb 代码
- map.resources :boards do |boards|
- boards.resources :topics
- end
-
- map.resources :boards
这样设置后,id=1 的板块的主题列表就可以通过 http://localhost:3004/boards/1/topics 来访问了。所以需要修改board的index.rhtml 并添加几个板块:java、ruby。。。
html 代码
- <h1>Listing boardsh1>
-
- <table border="0" cellspacing="1" align="center" width="85%">
- <tr bgcolor="#0033FF">
- <th>论坛th>
- <th>主题th>
- <th>文章th>
- <th>最近发表th>
- tr>
-
- <% for board in @boards %>
- <tr bgcolor="#0099FF">
- <td><%= link_to "#{h board.name}", topics_path(board) %><br/><%=h board.desc %>td>
- <td align="center"><%=h board.topic_count %>td>
- <td align="center"><%=h board.post_count %>td>
- <td align="center">"><%=h board.post_id %>td>
- tr>
- <% end %>
- table>
-
- <br />
-
- <%= link_to 'New board', new_board_path %>
分享到:
相关推荐
Rails::API 是 Rails 的精简版本,针对不需要使用完整 Rails 功能的开发者。 Rails::API 移除了 ActionView 和其他一些渲染功能,不关心Web前端的开发者可更容易、快速地开发应用程序,因此运行速度比正常的 Rails ...
在本篇内容中,我们将深入探讨如何利用Ruby on Rails(简称Rails)这一强大的Web应用程序框架来构建可伸缩且易于维护的RESTful API。Rails以其简洁优雅的语法、高效的开发速度以及良好的社区支持而闻名,这使得它...
这篇博客文章“Rails中应用Ext.tree:以中国的省市地区三级联动选择为例”提供了一个实用的示例,教我们如何利用Ext.js库中的Tree组件来实现这种功能。 首先,让我们了解Rails和Ext.js的基本概念。Rails是基于Ruby...
博文链接:https://neverfail.iteye.com/blog/77505
chef-rails, 厨房设置一个可以与 Nginx 和 Rails 一起滚动的Ubuntu服务器 主厨 rails安装一个准备为 Ruby on Rails 栈准备的Ubuntu服务器:NginxPostgreSQLRedisMemcached带RVM的rubyPhusion乘客独立要求Ubuntu ...
使用`GoOnRails`生成器,可以轻松地在Rails项目中添加一个新的Go应用: ```bash rails generate go_on_rails:app my_go_app ``` 这将在Rails项目的`lib/my_go_app`目录下创建一个新的Go应用结构。 ### 4. 集成Go ...
- 测试安装: 创建一个简单的Rails应用来验证是否成功安装。 #### 五、练习作业0-Hello World - **目标**: - 学习如何创建第一个Rails应用程序。 - **过程**: - 创建新项目。 - 设置数据库配置。 - 创建控制器...
一个用 Rails3 MongoDB 写的论坛,作者是 chloerei。 作者使用它开的论坛:http://codecampo.com/ 标签:Campo
- **步骤**:通过命令行使用`rails new project_name`来初始化一个新的Rails项目。 - **结构**:新项目将包含默认的目录结构,如`app`、`config`、`db`等,分别用于存放应用程序代码、配置文件、数据库迁移脚本等。 ...
2. 创建资源:使用`rails generate controller Posts`生成控制器,再用`rails generate scaffold Post title:string content:text`生成模型和相关的控制器、视图及路由。 3. 迁移数据库:编写迁移文件,更新数据库表...
Ruby on Rails,通常简称为Rails,是一个基于Ruby语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,以简洁、高效的代码和“约定优于配置”的理念著称。此压缩包中的"rubyonrails21-cn.pdf"可能是...
"Advanced Rails" 涵盖了Rails开发中的高级主题和技术,是Ruby on Rails学习进阶的重要资源,尤其适合已经对基础Rails有一定了解的开发者。 在Web开发领域,Rails以其高效、简洁的代码和“约定优于配置”的哲学吸引...
这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何利用Rails的强大功能来创建一个允许用户上传、分享和浏览图片的应用。 1. **Rails框架基础**: Rails的核心理念是DRY(Don't...
adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成 AdminLTE Rails gem AdminLTE 是后端的高级 Bootstrap 主题。英镑 AdminLTE Rails gem 与 Rails 资产管道集成了英镑AdminLTE主题。安装将...
Rails3 是 Ruby on Rails 框架的一个版本,它提供了一系列强大的命令行工具,使得开发者可以快速地构建和管理Web应用。在本文中,我们将深入探讨Rails3中的常用命令,帮助你更高效地进行开发工作。 首先,新建一个...
- **创建项目**:使用`rails new`命令创建一个新的Rails项目。 - **配置Git**:设置版本控制系统,确保代码变更能够被追踪记录。 - **使用Bootstrap进行前端设计**:介绍如何使用Bootstrap框架来快速搭建美观的...
《敏捷Web开发与Rails:程序指南 第四版》是一本深度探讨使用Ruby on Rails框架进行敏捷Web应用开发的专业书籍。本书旨在帮助开发者充分利用Rails 4的特性,提高开发效率,实现快速迭代和高质量的代码编写。 Rails是...
标题 "Rails" 指的是 Ruby on Rails,一个开源的Web应用程序框架,它基于Ruby编程语言,遵循MVC(模型-视图-控制器)架构模式。Rails由David Heinemeier Hansson在2004年创建,其设计理念是强调代码的简洁性、DRY...