如何使用MySQL和Ruby on Rails開發(fā)一個簡單的在線調(diào)查問卷
隨著互聯(lián)網(wǎng)的普及,越來越多的人開始使用在線調(diào)查問卷來獲取用戶的意見和反饋。使用MySQL和Ruby on Rails開發(fā)一個簡單的在線調(diào)查問卷是一種快速和高效的方法。本文將介紹如何使用這兩個工具來搭建一個基本的在線調(diào)查問卷應(yīng)用,并提供具體的代碼示例。
- 環(huán)境搭建
首先,確保已經(jīng)安裝了Ruby on Rails和MySQL。在終端中運(yùn)行以下命令來檢查:
ruby -v rails -v mysql -V
登錄后復(fù)制
如果輸出結(jié)果顯示了相應(yīng)的版本號,則表示已經(jīng)成功安裝。
- 創(chuàng)建數(shù)據(jù)庫和表
在MySQL中創(chuàng)建一個名為”survey”的數(shù)據(jù)庫,并在其中創(chuàng)建一個名為”questions”的表。表結(jié)構(gòu)如下:
CREATE DATABASE survey; USE survey; CREATE TABLE questions ( id INT PRIMARY KEY AUTO_INCREMENT, text TEXT );
登錄后復(fù)制
表中只包含兩個字段:id和text。id是記錄的唯一標(biāo)識符,text存儲問題的文本。
- 創(chuàng)建Rails應(yīng)用
在終端中進(jìn)入項目目錄,運(yùn)行以下命令來創(chuàng)建一個新的Rails應(yīng)用:
rails new survey_app cd survey_app
登錄后復(fù)制
這將創(chuàng)建一個名為”survey_app”的新的Rails應(yīng)用,并進(jìn)入該應(yīng)用的目錄。
- 設(shè)置數(shù)據(jù)庫配置
在”config/database.yml”文件中配置MySQL數(shù)據(jù)庫的連接信息。將以下代碼塊添加到文件中:
development: adapter: mysql2 encoding: utf8 pool: 5 username: root password: your_mysql_password database: survey_development
登錄后復(fù)制
將”your_mysql_password”替換為你的MySQL密碼,并確保數(shù)據(jù)庫名稱為”survey_development”。
- 生成模型和控制器
運(yùn)行以下命令來生成一個名為”Question”的模型和對應(yīng)的控制器:
rails generate model Question text:text rails generate controller Questions index
登錄后復(fù)制
這將在”app/models”和”app/controllers”目錄中生成相應(yīng)的文件。打開”app/models/question.rb”文件,并添加以下代碼:
class Question < ApplicationRecord end
登錄后復(fù)制
打開”app/controllers/questions_controller.rb”文件,并添加以下代碼:
class QuestionsController < ApplicationController def index @questions = Question.all end end
登錄后復(fù)制
- 添加路由
打開”config/routes.rb”文件,并添加以下代碼:
Rails.application.routes.draw do resources :questions, only: [:index] root 'questions#index' end
登錄后復(fù)制
這將定義一個名為”questions#index”的根路徑。
- 創(chuàng)建視圖
在”app/views/questions”目錄下創(chuàng)建一個名為”index.html.erb”的文件,并添加以下代碼:
<h1>調(diào)查問卷</h1> <% @questions.each do |question| %> <p><%= question.text %></p> <% end %>
登錄后復(fù)制
這將顯示所有問題的文本。
- 運(yùn)行應(yīng)用
在終端中運(yùn)行以下命令來啟動應(yīng)用:
rails server
登錄后復(fù)制
在瀏覽器中訪問”http://localhost:3000″,你將會看到一個簡單的頁面顯示所有問題的文本。
- 添加問題
要添加問題到數(shù)據(jù)庫中,可以使用Rails的命令行工具。在終端中運(yùn)行以下命令:
rails console
登錄后復(fù)制
然后運(yùn)行以下命令來添加一個問題:
Question.create(text: '你最喜歡的顏色是什么?')
登錄后復(fù)制
退出命令行工具,然后在瀏覽器中刷新頁面,你將會看到新添加的問題出現(xiàn)在列表中。
總結(jié)
通過上述步驟,我們成功地使用MySQL和Ruby on Rails開發(fā)了一個簡單的在線調(diào)查問卷應(yīng)用。使用Rails能夠快速構(gòu)建應(yīng)用程序骨架,并使用MySQL存儲數(shù)據(jù)。希望這篇文章對于初學(xué)者來說能夠提供一些指導(dǎo)和幫助。實(shí)際開發(fā)中還可以擴(kuò)展該應(yīng)用,添加更多的功能和改進(jìn)用戶體驗(yàn)。
以上就是如何使用MySQL和Ruby on Rails開發(fā)一個簡單的在線調(diào)查問卷的詳細(xì)內(nèi)容,更多請關(guān)注www.92cms.cn其它相關(guān)文章!