Maison  >  Article  >  base de données  >  Comment implémenter un système de vote simple en utilisant MySQL et Ruby

Comment implémenter un système de vote simple en utilisant MySQL et Ruby

WBOY
WBOYoriginal
2023-09-20 12:37:511058parcourir

Comment implémenter un système de vote simple en utilisant MySQL et Ruby

Comment mettre en œuvre un système de vote simple à l'aide de MySQL et Ruby

Un système de vote est une application en ligne courante utilisée pour recueillir les opinions des utilisateurs sur un problème ou un sujet. Dans cet article, nous présenterons comment utiliser la base de données MySQL et le langage de programmation Ruby pour implémenter un système de vote simple.

Tout d’abord, nous devons préparer l’environnement. Assurez-vous d'avoir installé la base de données MySQL et de disposer d'un environnement de programmation Ruby. S'il n'est pas encore installé, vous pouvez le télécharger depuis le site officiel et suivre les instructions pour l'installer.

Ensuite, nous devons créer une base de données. Ouvrez le terminal MySQL ou utilisez un outil d'interface graphique (tel que PhpMyAdmin) pour créer une base de données vide nommée "voting_system". Créez une table nommée « votes » sous cette base de données pour stocker les informations de vote. Le tableau doit contenir les champs suivants :

  • id : un type entier auto-croissant comme clé primaire
  • question : le type de texte de la question de vote
  • option1 : le type de texte de la première option
  • option2 : le type de texte de la deuxième option
  • option1_votes : Le nombre de votes pour la première option, type entier, la valeur par défaut est 0
  • option2_votes : Le nombre de votes pour la deuxième option, type entier, la valeur par défaut est 0

Exécutez ce qui suit Instruction SQL dans MySQL pour créer la table :

CREATE TABLE votes (
  id INT PRIMARY KEY AUTO_INCREMENT,
  question TEXT,
  option1 TEXT,
  option2 TEXT,
  option1_votes INT DEFAULT 0,
  option2_votes INT DEFAULT 0
);

Ensuite, utilisons Ruby pour nous connecter à la base de données et implémenter la fonctionnalité du système de vote. Tout d’abord, nous devons installer la gemme du pilote MySQL de Ruby. Exécutez la commande suivante dans la ligne de commande pour installer :

gem install mysql2

Ensuite, créez un fichier Ruby, tel que "voting_system.rb", et utilisez le code suivant pour vous connecter à la base de données MySQL :

require 'mysql2'

# 创建数据库连接
client = Mysql2::Client.new(:host => "localhost", :username => "root", :password => "your-password", :database => "voting_system")

# 添加投票
def add_vote(question, option1, option2)
  query = "INSERT INTO votes (question, option1, option2) VALUES ('#{question}', '#{option1}', '#{option2}')"
  client.query(query)
  puts "投票问题:#{question},选项1:#{option1},选项2:#{option2},已添加"
end

# 获取投票信息
def get_votes
  query = "SELECT * FROM votes"
  result = client.query(query)
  result.each do |row|
    puts "投票ID: #{row['id']}"
    puts "问题: #{row['question']}"
    puts "选项1: #{row['option1']}"
    puts "选项1票数: #{row['option1_votes']}"
    puts "选项2: #{row['option2']}"
    puts "选项2票数: #{row['option2_votes']}"
    puts "
"
  end
end

# 投票
def vote(vote_id, option)
  query = "UPDATE votes SET #{option}_votes = #{option}_votes + 1 WHERE id = #{vote_id}"
  client.query(query)
  puts "投票ID:#{vote_id},选项:#{option},已记录"
end

# 示例代码
add_vote("你喜欢吃水果吗?", "喜欢", "不喜欢")
get_votes
vote(1, "option1")
get_votes

Dans l'exemple de code ci-dessus, nous avons défini plusieurs méthodes pour implémenter la fonctionnalité du système de vote. La méthode "add_vote" est utilisée pour ajouter des questions et des options de vote à la base de données, la méthode "get_votes" est utilisée pour obtenir toutes les informations de vote dans la base de données et la méthode "vote" est utilisée pour enregistrer les choix de vote de l'utilisateur.

Enregistrez et exécutez le fichier "voting_system.rb", vous verrez les informations de vote imprimées sur la console et les données de vote seront mises à jour.

Grâce aux étapes ci-dessus, nous avons réussi à mettre en œuvre un système de vote simple utilisant la base de données MySQL et le langage de programmation Ruby. Vous pouvez modifier et étendre le code selon vos besoins, par exemple en ajoutant plus d'options, des statistiques de vote, etc. J'espère que cet article vous sera 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:
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