如何使用MySQL和Ruby on Rails開發一個簡單的線上考試系統
近年來,隨著線上教育的發展,線上考試系統越來越受到關注。線上考試系統能夠方便地進行考試管理、試題管理、成績分析等功能,為學生和教師帶來了極大的便利。本文將介紹如何使用MySQL和Ruby on Rails(簡稱Rails)來開發一個簡單的線上考試系統,並提供具體的程式碼範例。
一、環境準備
在開始開發之前,需要安裝以下軟體和函式庫:
安裝完成後,可以透過執行以下命令來驗證是否安裝成功:
$ ruby -v $ rails -v $ mysql -V
二、建立Rails應用程式
$ rails new exam_system
development: adapter: mysql2 encoding: utf8 database: exam_system_development pool: 5 username: root password: your_password host: localhost test: adapter: mysql2 encoding: utf8 database: exam_system_test pool: 5 username: root password: your_password host: localhost
$ rails db:create
$ rails g model Exam title:string time_limit:integer
$ rails g model Question exam:references content:text answer_a:string answer_b:string answer_c:string answer_d:string correct_answer:integer
$ rails db:migrate
$ rails g controller Exams
class ExamsController < ApplicationController def index @exams = Exam.all end def show @exam = Exam.find(params[:id]) @questions = @exam.questions end end在app/views/exams目錄下,建立index.html.erb和show.html.erb檢視檔案:
<h1>所有考试</h1> <table> <tr> <th>标题</th> <th>时间限制</th> <th>操作</th> </tr> <% @exams.each do |exam| %> <tr> <td><%= exam.title %></td> <td><%= exam.time_limit %>分钟</td> <td><%= link_to '开始考试', exam %></td> </tr> <% end %> </table>
show.html.erb:
<h1><%= @exam.title %>考试</h1> <h2>试题列表</h2> <% @questions.each do |question| %> <h3><%= question.content %></h3> <ul> <li><%= question.answer_a %></li> <li><%= question.answer_b %></li> <li><%= question.answer_c %></li> <li><%= question.answer_d %></li> </ul> <% end %>
六、執行應用程式
在終端機中執行以下命令來啟動Rails伺服器:$ rails s
希望以上內容對於使用MySQL和Ruby on Rails開發一個簡單的線上考試系統有所幫助。透過學習和實踐,你可以進一步擴展和完善系統,並根據實際需求進行客製化開發。
以上是如何使用MySQL和Ruby on Rails開發一個簡單的線上考試系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!