>데이터 베이스 >MySQL 튜토리얼 >MySQL과 Ruby on Rails를 사용하여 간단한 온라인 일정 관리 시스템을 개발하는 방법

MySQL과 Ruby on Rails를 사용하여 간단한 온라인 일정 관리 시스템을 개발하는 방법

王林
王林원래의
2023-09-20 14:54:27652검색

如何使用MySQL和Ruby on Rails开发一个简单的在线调度系统

MySQL 및 Ruby on Rails를 사용하여 간단한 온라인 일정 관리 시스템을 개발하는 방법

지속적인 기술 개발로 인해 점점 더 많은 기업과 조직에서 리소스를 관리하고 할당하기 위한 효율적인 일정 관리 시스템이 필요합니다. MySQL과 Ruby on Rails를 사용하여 간단한 온라인 일정 관리 시스템을 개발하는 것은 일반적이고 실행 가능한 옵션입니다. 이 기사에서는 이 두 가지 기술을 사용하여 기본 기능을 갖춘 온라인 일정 관리 시스템을 구축하는 방법을 자세히 소개하고 해당 코드 예제를 제공합니다.

MySQL은 강력한 데이터 저장 및 쿼리 기능을 제공하는 인기 있는 오픈 소스 관계형 데이터베이스 관리 시스템입니다. Ruby on Rails는 개발자가 효율적이고 확장 가능한 웹 애플리케이션을 더 빠르게 구축할 수 있게 해주는 Ruby 언어 기반의 인기 있는 웹 개발 프레임워크입니다.

개발을 시작하기 전에 필요한 소프트웨어와 도구가 설치되어 있는지 확인해야 합니다. 먼저 MySQL 데이터베이스와 Rails 개발 프레임워크를 설치해야 합니다. 이러한 설치는 brew install mysqlgem install Rails 명령을 실행하여 완료할 수 있습니다. 설치가 완료되면 일정 시스템 생성을 시작할 수 있습니다. brew install mysqlgem install rails来完成这些安装。一旦安装完成,我们就可以开始创建我们的调度系统了。

第一步是创建一个新的Rails应用。在终端中执行命令rails new dispatch_system来创建一个名为"dispatch_system"的新的Rails应用。进入应用目录,执行命令cd dispatch_system

接下来,我们需要创建一个调度任务的模型和相应的数据库表。在终端中执行命令rails generate model DispatchTask name:string status:boolean来生成一个名为"DispatchTask"的模型,并添加一个名为"name"的字符串类型字段和一个名为"status"的布尔类型字段。执行命令rails db:migrate来创建相应的数据库表。

接下来,我们需要创建一个控制器来处理调度任务的增删改查操作。执行命令rails generate controller DispatchTasks来生成一个名为"DispatchTasks"的控制器。打开生成的控制器文件"app/controllers/dispatch_tasks_controller.rb",添加以下代码:

class DispatchTasksController < ApplicationController
  def index
    @tasks = DispatchTask.all
  end

  def new
    @task = DispatchTask.new
  end

  def create
    @task = DispatchTask.new(task_params)
    
    if @task.save
      redirect_to dispatch_tasks_path
    else
      render :new
    end
  end

  def edit
    @task = DispatchTask.find(params[:id])
  end

  def update
    @task = DispatchTask.find(params[:id])
    
    if @task.update(task_params)
      redirect_to dispatch_tasks_path
    else
      render :edit
    end
  end

  def destroy
    @task = DispatchTask.find(params[:id])
    @task.destroy
    
    redirect_to dispatch_tasks_path
  end

  private

  def task_params
    params.require(:dispatch_task).permit(:name, :status)
  end
end

这个控制器定义了一系列操作调度任务的方法,包括显示所有任务、创建新任务、编辑任务、更新任务和删除任务。在这个控制器中,我们使用了DispatchTask模型来处理数据库操作,并通过path来实现页面的跳转。

接下来,我们需要创建相应的视图文件。在"app/views/dispatch_tasks"目录下,创建"index.html.erb"、"new.html.erb"、"edit.html.erb"和"_form.html.erb"这四个文件,并添加以下代码:

index.html.erb:

<h1>调度任务列表</h1>

<table>
  <tr>
    <th>名称</th>
    <th>状态</th>
    <th>操作</th>
  </tr>
  
  <% @tasks.each do |task| %>
    <tr>
      <td><%= task.name %></td>
      <td><%= task.status ? "完成" : "未完成" %></td>
      <td>
        <%= link_to "编辑", edit_dispatch_task_path(task) %>
        <%= link_to "删除", dispatch_task_path(task), method: :delete, data: { confirm: "确定要删除吗?" } %>
      </td>
    </tr>
  <% end %>
</table>

<%= link_to "新增任务", new_dispatch_task_path %>

new.html.erb:

<h1>新增调度任务</h1>

<%= render "form" %>

<%= link_to "返回", dispatch_tasks_path %>

edit.html.erb:

<h1>编辑调度任务</h1>

<%= render "form" %>

<%= link_to "返回", dispatch_tasks_path %>

_form.html.erb:

<%= form_with(model: @task, local: true) do |form| %>
  <%= form.label :name, "任务名称" %>
  <%= form.text_field :name %>

  <%= form.label :status, "任务状态" %>
  <%= form.check_box :status %>
  
  <%= form.submit "保存" %>
<% end %>

这些视图文件定义了调度系统的界面和表单,并使用了erb模板引擎来嵌入Ruby代码。在这些视图文件中,我们使用了DispatchTask模型中的字段来显示任务的名称和状态,并使用link_to方法来生成相应的链接。

最后,我们需要配置数据库连接。打开"config/database.yml"文件,确认数据库的连接配置正确,包括数据库名、用户名和密码。在这个文件中,通常可以找到一段以"default"为键名的配置,我们需要确保该配置的内容正确。

至此,我们已经完成了一个基本的在线调度系统的开发。在终端中执行命令rails s

첫 번째 단계는 새로운 Rails 애플리케이션을 만드는 것입니다. 터미널에서 rails new dispatch_system 명령을 실행하여 "dispatch_system"이라는 새 Rails 애플리케이션을 생성합니다. 애플리케이션 디렉터리에 들어가서 cd dispatch_system 명령을 실행합니다.

다음으로 일정 작업 모델과 해당 데이터베이스 테이블을 만들어야 합니다. 터미널에서 rails generate model DispatchTask name:string status:boolean 명령을 실행하여 "DispatchTask"라는 모델을 생성하고 "name"이라는 문자열 유형 필드와 " 상태". 해당 데이터베이스 테이블을 생성하려면 rails db: migration 명령을 실행하세요. 🎜🎜다음으로 예약된 작업의 추가, 삭제, 수정 및 쿼리 작업을 처리하는 컨트롤러를 만들어야 합니다. rails generate Controller DispatchTasks 명령을 실행하여 "DispatchTasks"라는 컨트롤러를 생성합니다. 생성된 컨트롤러 파일 "app/controllers/dispatch_tasks_controller.rb"를 열고 다음 코드를 추가합니다. 🎜rrreee🎜이 컨트롤러는 모든 작업 표시, 새 작업 생성, 작업 편집 및 작업 업데이트를 포함하여 디스패치 작업을 작동하기 위한 일련의 메서드를 정의합니다. 작업을 삭제하세요. 이 컨트롤러에서는 DispatchTask 모델을 사용하여 데이터베이스 작업을 처리하고 경로를 통한 페이지 점프를 구현합니다. 🎜🎜다음으로 해당 뷰 파일을 생성해야 합니다. "app/views/dispatch_tasks" 디렉토리에 "index.html.erb", "new.html.erb", "edit.html.erb", "_form.html.erb" 4개의 파일을 생성하고 다음 코드를 추가합니다. : 🎜🎜index.html.erb: 🎜rrreee🎜new.html.erb: 🎜rrreee🎜edit.html.erb: 🎜rrreee🎜_form.html.erb: 🎜rrreee🎜이 뷰 파일은 스케줄링 시스템의 인터페이스를 정의하고 양식을 작성하고 erb 템플릿 엔진을 사용하여 Ruby 코드를 삽입합니다. 이러한 뷰 파일에서는 DispatchTask 모델의 필드를 사용하여 작업의 이름과 상태를 표시하고 link_to 메서드를 사용하여 해당 링크를 생성합니다. 🎜🎜마지막으로 데이터베이스 연결을 구성해야 합니다. "config/database.yml" 파일을 열고 데이터베이스 이름, 사용자 이름 및 비밀번호를 포함하여 데이터베이스 연결 구성이 올바른지 확인하십시오. 이 파일에서는 일반적으로 키 이름이 "default"인 구성을 찾을 수 있습니다. 구성 내용이 올바른지 확인해야 합니다. 🎜🎜이 시점에서 기본적인 온라인 일정 관리 시스템 개발이 완료되었습니다. 터미널에서 rails s 명령을 실행하여 Rails 서버를 시작한 후 브라우저에서 "http://localhost:3000/dispatch_tasks"를 방문하여 이 디스패치 시스템을 확인하고 사용할 수 있습니다. 해당 링크와 버튼을 클릭하여 작업을 생성, 편집 및 삭제할 수 있습니다. 🎜🎜물론 이는 스케줄링 시스템의 단순한 예일 뿐이며 개선하고 개선할 수 있는 영역이 많습니다. 하지만 이 예를 통해 우리는 MySQL과 Ruby on Rails를 사용하여 온라인 일정 관리 시스템을 개발하는 방법을 배우고 이 두 기술의 기본 사용에 대한 사전 이해를 가질 수 있습니다. 이 기사가 도움이 되기를 바랍니다! 🎜

위 내용은 MySQL과 Ruby on Rails를 사용하여 간단한 온라인 일정 관리 시스템을 개발하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.