Maison base de données tutoriel mysql Comment développer un système de planification en ligne simple à l'aide de MySQL et Ruby on Rails

Comment développer un système de planification en ligne simple à l'aide de MySQL et Ruby on Rails

Sep 20, 2023 pm 02:54 PM
mysql ruby on rails Système de planification en ligne

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

Comment développer un système de planification en ligne simple à l'aide de MySQL et Ruby on Rails

Avec le développement continu de la technologie, de plus en plus d'entreprises et d'organisations ont besoin d'un système de planification efficace pour gérer et allouer les ressources. Utiliser MySQL et Ruby on Rails pour développer un système de planification en ligne simple est une option courante et réalisable. Cet article présentera en détail comment utiliser ces deux technologies pour créer un système de planification en ligne avec des fonctions de base et fournira des exemples de code correspondants.

MySQL est un système de gestion de base de données relationnelle open source populaire qui offre de puissantes capacités de stockage de données et de requête. Ruby on Rails est un framework de développement Web populaire basé sur le langage Ruby qui permet aux développeurs de créer plus rapidement des applications Web efficaces et évolutives.

Avant de commencer le développement, nous devons nous assurer que les logiciels et outils requis sont installés. Tout d’abord, vous devez installer la base de données MySQL et le framework de développement Rails. Ces installations peuvent être complétées en exécutant les commandes brew install mysql et gem install rails. Une fois l'installation terminée, nous pouvons commencer à créer notre système de planification. 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
Copier après la connexion

这个控制器定义了一系列操作调度任务的方法,包括显示所有任务、创建新任务、编辑任务、更新任务和删除任务。在这个控制器中,我们使用了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 %>
Copier après la connexion

new.html.erb:

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

<%= render "form" %>

<%= link_to "返回", dispatch_tasks_path %>
Copier après la connexion

edit.html.erb:

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

<%= render "form" %>

<%= link_to "返回", dispatch_tasks_path %>
Copier après la connexion

_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 %>
Copier après la connexion

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

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

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

La première étape consiste à créer une nouvelle application Rails. Exécutez la commande rails new dispatch_system dans le terminal pour créer une nouvelle application Rails nommée "dispatch_system". Entrez dans le répertoire de l'application et exécutez la commande cd dispatch_system.

Ensuite, nous devons créer un modèle de planification des tâches et la table de base de données correspondante. Exécutez la commande rails generate model DispatchTask name:string status:boolean dans le terminal pour générer un modèle nommé "DispatchTask", et ajoutez un champ de type chaîne nommé "name" et un champ nommé Boolean field of " statut". Exécutez la commande rails db:migrate pour créer la table de base de données correspondante. 🎜🎜Ensuite, nous devons créer un contrôleur pour gérer les opérations d'ajout, de suppression, de modification et d'interrogation des tâches planifiées. Exécutez la commande rails generate controller DispatchTasks pour générer un contrôleur nommé "DispatchTasks". Ouvrez le fichier de contrôleur généré "app/controllers/dispatch_tasks_controller.rb" et ajoutez le code suivant : 🎜rrreee🎜Ce contrôleur définit une série de méthodes pour exécuter les tâches de répartition, notamment l'affichage de toutes les tâches, la création de nouvelles tâches, la modification des tâches et la mise à jour des tâches. et supprimer des tâches. Dans ce contrôleur, nous utilisons le modèle DispatchTask pour gérer les opérations de base de données et implémenter les sauts de page via le chemin. 🎜🎜Ensuite, nous devons créer le fichier de vue correspondant. Dans le répertoire "app/views/dispatch_tasks", créez quatre fichiers "index.html.erb", "new.html.erb", "edit.html.erb" et "_form.html.erb" et ajoutez le code suivant : 🎜🎜index.html.erb: 🎜rrreee🎜new.html.erb: 🎜rrreee🎜edit.html.erb: 🎜rrreee🎜_form.html.erb: 🎜rrreee🎜Ces fichiers de vue définissent l'interface du système de planification et formulaires et utilise le moteur de modèle erb pour intégrer le code Ruby. Dans ces fichiers de vue, nous utilisons les champs du modèle DispatchTask pour afficher le nom et l'état de la tâche, et utilisons la méthode link_to pour générer les liens correspondants. 🎜🎜Enfin, nous devons configurer la connexion à la base de données. Ouvrez le fichier « config/database.yml » et confirmez que la configuration de la connexion à la base de données est correcte, y compris le nom de la base de données, le nom d'utilisateur et le mot de passe. Dans ce fichier, vous pouvez généralement trouver une configuration avec « par défaut » comme nom de clé. Nous devons nous assurer que le contenu de la configuration est correct. 🎜🎜À ce stade, nous avons terminé le développement d'un système de planification en ligne de base. Exécutez la commande rails s dans le terminal pour démarrer le serveur Rails, puis visitez "http://localhost:3000/dispatch_tasks" dans le navigateur pour afficher et utiliser ce système de répartition. Les tâches peuvent être créées, modifiées et supprimées en cliquant sur les liens et boutons correspondants. 🎜🎜Bien sûr, ce n'est qu'un exemple simple de système de planification, et de nombreux domaines peuvent être améliorés et perfectionnés. Mais grâce à cet exemple, nous pouvons apprendre à utiliser MySQL et Ruby on Rails pour développer un système de planification en ligne, et avoir une compréhension préliminaire de l'utilisation de base de ces deux technologies. J'espère que cet article pourra vous être utile ! 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La relation entre l'utilisateur de MySQL et la base de données La relation entre l'utilisateur de MySQL et la base de données Apr 08, 2025 pm 07:15 PM

Dans la base de données MySQL, la relation entre l'utilisateur et la base de données est définie par les autorisations et les tables. L'utilisateur a un nom d'utilisateur et un mot de passe pour accéder à la base de données. Les autorisations sont accordées par la commande Grant, tandis que le tableau est créé par la commande Create Table. Pour établir une relation entre un utilisateur et une base de données, vous devez créer une base de données, créer un utilisateur, puis accorder des autorisations.

MySQL: la facilité de gestion des données pour les débutants MySQL: la facilité de gestion des données pour les débutants Apr 09, 2025 am 12:07 AM

MySQL convient aux débutants car il est simple à installer, puissant et facile à gérer les données. 1. Installation et configuration simples, adaptées à une variété de systèmes d'exploitation. 2. Prise en charge des opérations de base telles que la création de bases de données et de tables, d'insertion, d'interrogation, de mise à jour et de suppression de données. 3. Fournir des fonctions avancées telles que les opérations de jointure et les sous-questionnaires. 4. Les performances peuvent être améliorées par l'indexation, l'optimisation des requêtes et le partitionnement de la table. 5. Prise en charge des mesures de sauvegarde, de récupération et de sécurité pour garantir la sécurité et la cohérence des données.

Puis-je récupérer le mot de passe de la base de données dans Navicat? Puis-je récupérer le mot de passe de la base de données dans Navicat? Apr 08, 2025 pm 09:51 PM

Navicat lui-même ne stocke pas le mot de passe de la base de données et ne peut récupérer que le mot de passe chiffré. Solution: 1. Vérifiez le gestionnaire de mots de passe; 2. Vérifiez la fonction "Remember Motway" de Navicat; 3. Réinitialisez le mot de passe de la base de données; 4. Contactez l'administrateur de la base de données.

L'optimisation des requêtes dans MySQL est essentielle pour améliorer les performances de la base de données, en particulier lorsqu'elle traite avec de grands ensembles de données L'optimisation des requêtes dans MySQL est essentielle pour améliorer les performances de la base de données, en particulier lorsqu'elle traite avec de grands ensembles de données Apr 08, 2025 pm 07:12 PM

1. Utilisez l'index correct pour accélérer la récupération des données en réduisant la quantité de données numérisées SELECT * FROMMLOYEESEESHWHERELAST_NAME = 'SMITH'; Si vous recherchez plusieurs fois une colonne d'une table, créez un index pour cette colonne. If you or your app needs data from multiple columns according to the criteria, create a composite index 2. Avoid select * only those required columns, if you select all unwanted columns, this will only consume more server memory and cause the server to slow down at high load or frequency times For example, your table contains columns such as created_at and updated_at and timestamps, and then avoid selecting * because they do not require inefficient query se

Comment voir Mysql Comment voir Mysql Apr 08, 2025 pm 07:21 PM

Affichez la base de données MySQL avec la commande suivante: Connectez-vous au serveur: MySQL -U Username -P mot de passe Exécuter les bases de données Afficher les bases de données; Commande pour obtenir toutes les bases de données existantes Sélectionnez la base de données: utilisez le nom de la base de données; Tableau de vue: afficher des tables; Afficher la structure de la table: décrire le nom du tableau; Afficher les données: sélectionnez * dans le nom du tableau;

Comment créer Navicat Premium Comment créer Navicat Premium Apr 09, 2025 am 07:09 AM

Créez une base de données à l'aide de NAVICAT Premium: Connectez-vous au serveur de base de données et entrez les paramètres de connexion. Cliquez avec le bouton droit sur le serveur et sélectionnez Créer une base de données. Entrez le nom de la nouvelle base de données et le jeu de caractères spécifié et la collation. Connectez-vous à la nouvelle base de données et créez le tableau dans le navigateur d'objet. Cliquez avec le bouton droit sur le tableau et sélectionnez Insérer des données pour insérer les données.

Comment copier des tables dans MySQL Comment copier des tables dans MySQL Apr 08, 2025 pm 07:24 PM

La copie d'une table dans MySQL nécessite la création de nouvelles tables, l'insertion de données, la définition de clés étrangères, la copie des index, les déclencheurs, les procédures stockées et les fonctions. Les étapes spécifiques incluent: la création d'une nouvelle table avec la même structure. Insérez les données de la table d'origine dans une nouvelle table. Définissez la même contrainte de clé étrangère (si le tableau d'origine en a un). Créer le même index. Créez le même déclencheur (si le tableau d'origine en a un). Créez la même procédure ou fonction stockée (si la table d'origine est utilisée).

Comment afficher le mot de passe de la base de données dans NAVICAT pour MARIADB? Comment afficher le mot de passe de la base de données dans NAVICAT pour MARIADB? Apr 08, 2025 pm 09:18 PM

NAVICAT pour MARIADB ne peut pas afficher directement le mot de passe de la base de données car le mot de passe est stocké sous forme cryptée. Pour garantir la sécurité de la base de données, il existe trois façons de réinitialiser votre mot de passe: réinitialisez votre mot de passe via Navicat et définissez un mot de passe complexe. Affichez le fichier de configuration (non recommandé, haut risque). Utilisez des outils de ligne de commande système (non recommandés, vous devez être compétent dans les outils de ligne de commande).

See all articles