📜  Ruby on Rails会话(1)

📅  最后修改于: 2023-12-03 15:19:51.986000             🧑  作者: Mango

Ruby on Rails 会话

首先,让我们来介绍一下什么是 Ruby on Rails。Ruby on Rails 简称 Rails,是一种基于 Ruby 编程语言的开源 web 应用框架。Rails 的宗旨是不重复发明轮子,让开发人员更加专注于业务逻辑的开发。

在本次会话中,我们将学习有关 Rails 的基础知识,以及如何构建一个简单的 web 应用程序。

1. Rails 的特点

Rails 具有以下特点:

  • 基于 MVC 架构模式,将应用程序分成 Model、View 和 Controller 三部分
  • 集成了许多常见功能,如用户认证、表单验证等
  • 支持 RESTful 路由设计
  • 内置了 ActiveRecord ORM,让数据库查询更加简便
  • 遵循“约定优于配置”原则,减少了代码量
  • 使用 Ruby 语言,可读性好、代码简洁
2. 快速开始

我们可以通过以下步骤来快速创建一个 Rails 应用程序:

  1. 安装 Ruby 和 Rails
  2. 创建一个新的 Rails 应用程序:rails new myapp
  3. 运行服务器: cd myapp && rails server
  4. 在浏览器中访问 http://localhost:3000

此时您应该能够看到一个默认的欢迎页面。

3. 创建一个控制器和视图

接下来,我们将创建一个控制器和视图,以了解 Rails 的 MVC 架构。我们将使用下面的步骤:

  1. 创建一个新的控制器:rails generate controller Welcome index
  2. app/controllers/welcome_controller.rb 中添加以下代码:
class WelcomeController < ApplicationController
  def index
  end
end
  1. app/views/welcome/index.html.erb 中添加以下代码:
<h1>Welcome#index</h1>
<p>Find me in app/views/welcome/index.html.erb</p>
  1. 访问 http://localhost:3000/welcome/index,您应该能够看到上面添加的文本。
4. 建立模型和数据库

以创建一个简单的博客为例,我们将构建一个 Post 模型。以下是步骤:

  1. 创建一个新的模型:rails generate model Post title:string body:text
  2. 执行数据库迁移:rails db:migrate
  3. app/models/post.rb 中添加以下代码:
class Post < ApplicationRecord
end
  1. app/controllers/posts_controller.rb 中添加以下代码:
class PostsController < ApplicationController
  def index
    @posts = Post.all
  end
end
  1. app/views/posts/index.html.erb 中添加以下代码:
<h1>Posts#index</h1>
<ul>
  <% @posts.each do |post| %>
    <li>
      <h2><%= post.title %></h2>
      <p><%= post.body %></p>
    </li>
  <% end %>
</ul>
  1. config/routes.rb 中添加以下代码:
Rails.application.routes.draw do
  resources :posts, only: [:index]
end
  1. 访问 http://localhost:3000/posts,您应该能够看到一个空白页面,因为还没有任何博客文章。
  2. http://localhost:3000/rails/db 中添加一篇新的博客文章。
  3. 再次访问 http://localhost:3000/posts,您现在应该能够看到上面添加的新文章了。
结论

在本次会话中,我们介绍了 Rails 的特点、如何快速开始、如何创建控制器和视图、如何建立模型和数据库。通过学习这些内容,您将能够更好地了解 Rails,并开始构建您自己的 web 应用程序。