`
neverfail
  • 浏览: 2801 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

用rails做个简单的论坛(一):板块与主题

阅读更多

工具: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 代码
  1. class Board < ActiveRecord::Base   
  2.   has_many :topics  
  3.      
  4. end  

 

topic.rb 代码
  1. class Topic < ActiveRecord::Base   
  2.   belongs_to :board  
  3.   
  4.   def init   #应该是初始化的工作,但刚接触不久,不清楚怎样搞,用方法
  5.     self.reply_count=0   
  6.     self.read_count =1   
  7.     self.post_count = 0   
  8.   end  
  9.      
  10. end  

另外需要修改config/routes.rb 的topics资源:

config/routes.rb 代码
  1. map.resources :boards do |boards|   
  2.     boards.resources :topics  
  3. end  
  4.   
  5. map.resources :boards  

这样设置后,id=1 的板块的主题列表就可以通过 http://localhost:3004/boards/1/topics 来访问了。所以需要修改board的index.rhtml 并添加几个板块:java、ruby。。。      

html 代码
  1. <h1>Listing boardsh1>  
  2.   
  3. <table border="0" cellspacing="1" align="center" width="85%">  
  4.   <tr bgcolor="#0033FF">  
  5.     <th>论坛th>  
  6.     <th>主题th>  
  7.     <th>文章th>  
  8.     <th>最近发表th>  
  9.   tr>  
  10.      
  11. <% for board in @boards %>  
  12.   <tr bgcolor="#0099FF">  
  13.     <td><%= link_to "#{h board.name}", topics_path(board) %><br/><%=h board.desc %>td>  
  14.     <td align="center"><%=h board.topic_count %>td>  
  15.     <td align="center"><%=h board.post_count %>td>  
  16.     <td align="center">"><%=h board.post_id %>td>  
  17.   tr>  
  18. <% end %>  
  19. table>  
  20.   
  21. <br />  
  22.   
  23. <%= link_to 'New board', new_board_path %>  
分享到:
评论

相关推荐

    Rails的精简版本Rails::API.zip

    Rails::API 是 Rails 的精简版本,针对不需要使用完整 Rails 功能的开发者。 Rails::API 移除了 ActionView 和其他一些渲染功能,不关心Web前端的开发者可更容易、快速地开发应用程序,因此运行速度比正常的 Rails ...

    Rails上的API:使用Rails构建REST APIAPIs on Rails: Building REST APIs with Rails

    在本篇内容中,我们将深入探讨如何利用Ruby on Rails(简称Rails)这一强大的Web应用程序框架来构建可伸缩且易于维护的RESTful API。Rails以其简洁优雅的语法、高效的开发速度以及良好的社区支持而闻名,这使得它...

    Rails中应用Ext.tree:以中国的省市地区三级联动选择为例

    这篇博客文章“Rails中应用Ext.tree:以中国的省市地区三级联动选择为例”提供了一个实用的示例,教我们如何利用Ext.js库中的Tree组件来实现这种功能。 首先,让我们了解Rails和Ext.js的基本概念。Rails是基于Ruby...

    用rails做个简单的论坛(三):将之前的串连起来

    博文链接:https://neverfail.iteye.com/blog/77505

    chef-rails, 厨房设置一个可以与 Nginx 和 Rails 一起滚动的Ubuntu服务器.zip

    chef-rails, 厨房设置一个可以与 Nginx 和 Rails 一起滚动的Ubuntu服务器 主厨 rails安装一个准备为 Ruby on Rails 栈准备的Ubuntu服务器:NginxPostgreSQLRedisMemcached带RVM的rubyPhusion乘客独立要求Ubuntu ...

    Ruby-GoOnRails使用Rails生成器来生成一个Golang应用

    使用`GoOnRails`生成器,可以轻松地在Rails项目中添加一个新的Go应用: ```bash rails generate go_on_rails:app my_go_app ``` 这将在Rails项目的`lib/my_go_app`目录下创建一个新的Go应用结构。 ### 4. 集成Go ...

    Rails 101 入门电子书

    - 测试安装: 创建一个简单的Rails应用来验证是否成功安装。 #### 五、练习作业0-Hello World - **目标**: - 学习如何创建第一个Rails应用程序。 - **过程**: - 创建新项目。 - 设置数据库配置。 - 创建控制器...

    Rails编写的微论坛Campo.zip

    一个用 Rails3 MongoDB 写的论坛,作者是 chloerei。 作者使用它开的论坛:http://codecampo.com/ 标签:Campo

    Ruby on Rails Guides v2 - Ruby on Rails 4.2.5

    - **步骤**:通过命令行使用`rails new project_name`来初始化一个新的Rails项目。 - **结构**:新项目将包含默认的目录结构,如`app`、`config`、`db`等,分别用于存放应用程序代码、配置文件、数据库迁移脚本等。 ...

    Ruby on Rails入门例子

    2. 创建资源:使用`rails generate controller Posts`生成控制器,再用`rails generate scaffold Post title:string content:text`生成模型和相关的控制器、视图及路由。 3. 迁移数据库:编写迁移文件,更新数据库表...

    Rails相关电子书汇总

    Ruby on Rails,通常简称为Rails,是一个基于Ruby语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,以简洁、高效的代码和“约定优于配置”的理念著称。此压缩包中的"rubyonrails21-cn.pdf"可能是...

    Advanced Rails

    "Advanced Rails" 涵盖了Rails开发中的高级主题和技术,是Ruby on Rails学习进阶的重要资源,尤其适合已经对基础Rails有一定了解的开发者。 在Web开发领域,Rails以其高效、简洁的代码和“约定优于配置”的哲学吸引...

    Rails项目源代码

    这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何利用Rails的强大功能来创建一个允许用户上传、分享和浏览图片的应用。 1. **Rails框架基础**: Rails的核心理念是DRY(Don't...

    adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成.zip

    adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成 AdminLTE Rails gem AdminLTE 是后端的高级 Bootstrap 主题。英镑 AdminLTE Rails gem 与 Rails 资产管道集成了英镑AdminLTE主题。安装将...

    Rails3常用命令行命令

    Rails3 是 Ruby on Rails 框架的一个版本,它提供了一系列强大的命令行工具,使得开发者可以快速地构建和管理Web应用。在本文中,我们将深入探讨Rails3中的常用命令,帮助你更高效地进行开发工作。 首先,新建一个...

    Rails 101S

    - **创建项目**:使用`rails new`命令创建一个新的Rails项目。 - **配置Git**:设置版本控制系统,确保代码变更能够被追踪记录。 - **使用Bootstrap进行前端设计**:介绍如何使用Bootstrap框架来快速搭建美观的...

    Agile Web Development with Rails 4th edition(敏捷Web开发与Rails:程序指南 第四版)

    《敏捷Web开发与Rails:程序指南 第四版》是一本深度探讨使用Ruby on Rails框架进行敏捷Web应用开发的专业书籍。本书旨在帮助开发者充分利用Rails 4的特性,提高开发效率,实现快速迭代和高质量的代码编写。 Rails是...

    Rails

    标题 "Rails" 指的是 Ruby on Rails,一个开源的Web应用程序框架,它基于Ruby编程语言,遵循MVC(模型-视图-控制器)架构模式。Rails由David Heinemeier Hansson在2004年创建,其设计理念是强调代码的简洁性、DRY...

Global site tag (gtag.js) - Google Analytics