增加学生答完问卷之后。能看到自己答题结果的功能
This commit is contained in:
parent
6193c6c558
commit
54c8ee9d4d
|
@ -1,7 +1,7 @@
|
||||||
class PollController < ApplicationController
|
class PollController < ApplicationController
|
||||||
before_filter :find_poll_and_course, :only => [:edit,:update,:destroy,:show,:statistics_result,:create_poll_question,:commit_poll,:commit_answer,:publish_poll,:republish_poll]
|
before_filter :find_poll_and_course, :only => [:edit,:update,:destroy,:show,:statistics_result,:create_poll_question,:commit_poll,:commit_answer,:publish_poll,:republish_poll,:poll_result]
|
||||||
before_filter :find_container, :only => [:new,:create, :index]
|
before_filter :find_container, :only => [:new,:create, :index]
|
||||||
before_filter :is_member_of_course, :only => [:index,:show]
|
before_filter :is_member_of_course, :only => [:index,:show,:poll_result]
|
||||||
before_filter :is_course_teacher, :only => [:new,:create,:edit,:update,:destroy,:publish_poll,:republish_poll]
|
before_filter :is_course_teacher, :only => [:new,:create,:edit,:update,:destroy,:publish_poll,:republish_poll]
|
||||||
include PollHelper
|
include PollHelper
|
||||||
def index
|
def index
|
||||||
|
@ -330,6 +330,14 @@ class PollController < ApplicationController
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#显示某个学生某份问卷的填写结果
|
||||||
|
def poll_result
|
||||||
|
@poll_questions = paginateHelper @poll.poll_questions,5
|
||||||
|
respond_to do |format|
|
||||||
|
format.html{render :layout => 'base_courses'}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
def find_poll_and_course
|
def find_poll_and_course
|
||||||
@poll = Poll.find params[:id]
|
@poll = Poll.find params[:id]
|
||||||
|
|
|
@ -1,20 +1,19 @@
|
||||||
<% has_commit = has_commit_poll?(poll.id ,User.current)%>
|
<% has_commit = has_commit_poll?(poll.id ,User.current)%>
|
||||||
|
<% poll_name = poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name%>
|
||||||
<li title="<%= poll.polls_name %>">
|
<li title="<%= poll.polls_name %>">
|
||||||
<% if @is_teacher %>
|
<% if @is_teacher %>
|
||||||
<% if has_commit %>
|
<% if has_commit %>
|
||||||
<sapn class="polls_title fl">
|
<sapn class="polls_title fl">
|
||||||
<%= poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name%>
|
<%= link_to poll_name, poll_result_poll_path(poll.id), :class => "polls_title polls_title_w fl", :style => "max-width: 550px;width: 550px;" %>
|
||||||
</sapn>
|
</sapn>
|
||||||
<% else %>
|
<% else %>
|
||||||
<%= link_to (poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name), poll_path(poll.id), :class => "polls_title polls_title_w fl" %>
|
<%= link_to poll_name, poll_path(poll.id), :class => "polls_title polls_title_w fl" %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% else %>
|
<% else %>
|
||||||
<% if has_commit && poll.polls_status == 2 %>
|
<% if has_commit && poll.polls_status == 2 %>
|
||||||
<sapn class="polls_title fl" style="max-width: 500px;">
|
<%= link_to poll_name, poll_result_poll_path(poll.id), :class => "polls_title polls_title_w fl", :style => "max-width: 500px;width: auto;" %>
|
||||||
<%= poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name %>
|
|
||||||
</sapn>
|
|
||||||
<% elsif !has_commit && poll.polls_status == 2 %>
|
<% elsif !has_commit && poll.polls_status == 2 %>
|
||||||
<%= link_to (poll.polls_name.empty? ? l(:label_poll_new) : poll.polls_name), poll_path(poll.id), :class => "polls_title polls_title_w fl", :style => "max-width: 550px;width: 550px;" %>
|
<%= link_to poll_name, poll_path(poll.id), :class => "polls_title polls_title_w fl", :style => "max-width: 550px;width: 550px;" %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% end %>
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
<li class="ur_question_item checkbox">
|
||||||
|
<div class="ur_title">
|
||||||
|
<span class="title_index">
|
||||||
|
第<%= poll_question.question_number%>题:
|
||||||
|
</span>
|
||||||
|
<%= poll_question.question_title %>
|
||||||
|
<span class="title_index">[多选题]</span>
|
||||||
|
<%if poll_question.is_necessary == 1%>
|
||||||
|
<span class="ur_required" title="必答">*</span>
|
||||||
|
<%end%>
|
||||||
|
</div>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<div class="ur_inputs">
|
||||||
|
<table class="ur_table">
|
||||||
|
<tbody>
|
||||||
|
<% poll_question.poll_votes.where("user_id = #{User.current.id}").each do |answer|%>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<%= answer.poll_answer.answer_text %>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<% end%>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</li><!--多选题 end-->
|
|
@ -0,0 +1,27 @@
|
||||||
|
<li class="ur_question_item radio">
|
||||||
|
<div class="ur_title">
|
||||||
|
<span class="title_index">
|
||||||
|
第<%= poll_question.question_number%>题:
|
||||||
|
</span>
|
||||||
|
<%= poll_question.question_title %>
|
||||||
|
<span class="title_index">[单选题]</span>
|
||||||
|
<%if poll_question.is_necessary == 1%>
|
||||||
|
<span class="ur_required" title="必答">*</span>
|
||||||
|
<%end%>
|
||||||
|
</div>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<div class="ur_inputs">
|
||||||
|
<table class="ur_table" >
|
||||||
|
<tbody>
|
||||||
|
<% poll_question.poll_votes.where("user_id = #{User.current.id}").each do |answer|%>
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
<%= answer.poll_answer.answer_text %>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<% end%>
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
</li><!--单选题 end-->
|
|
@ -0,0 +1,20 @@
|
||||||
|
<li class="ur_question_item textarea">
|
||||||
|
<div class="ur_preview">
|
||||||
|
<div class="ur_title">
|
||||||
|
<span class="title_index">
|
||||||
|
第<%= poll_question.question_number%>题:
|
||||||
|
</span>
|
||||||
|
<%= poll_question.question_title %>
|
||||||
|
<span class="title_index">[多行主观]</span>
|
||||||
|
<%if poll_question.is_necessary == 1%>
|
||||||
|
<span class="ur_required" title="必答">*</span>
|
||||||
|
<%end%>
|
||||||
|
</div>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<div class="ur_inputs">
|
||||||
|
<p>
|
||||||
|
<%= get_anwser_vote_text poll_question.id,User.current.id%>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</li><!--多行输入 end-->
|
|
@ -0,0 +1,18 @@
|
||||||
|
<li class="ur_question_item text">
|
||||||
|
<div class="ur_title">
|
||||||
|
<span class="title_index">
|
||||||
|
第<%= poll_question.question_number%>题:
|
||||||
|
</span>
|
||||||
|
<%= poll_question.question_title %>
|
||||||
|
<span class="title_index">[单行主观]</span>
|
||||||
|
<%if poll_question.is_necessary == 1%>
|
||||||
|
<span class="ur_required" title="必答">*</span>
|
||||||
|
<%end%>
|
||||||
|
</div>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<div class="ur_inputs">
|
||||||
|
<p>
|
||||||
|
<%= get_anwser_vote_text poll_question.id,User.current.id%>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
</li><!--当行输入 end-->
|
|
@ -0,0 +1,36 @@
|
||||||
|
<%= stylesheet_link_tag 'polls', :media => 'all' %>
|
||||||
|
<div class="polls_content polls_box">
|
||||||
|
<div class="ur_page_head" >
|
||||||
|
<h1 class="ur_page_title">
|
||||||
|
<%= @poll.polls_name.empty? ? l(:label_poll_new) : @poll.polls_name %>
|
||||||
|
</h1>
|
||||||
|
<p class="ur_prefix_content">
|
||||||
|
<%= @poll.polls_description%>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="ur_card">
|
||||||
|
<ol class="ur_questions">
|
||||||
|
<% @poll_questions.each do |poll_question|%>
|
||||||
|
<% if poll_question.question_type == 1%>
|
||||||
|
<%= render :partial => 'show_MC_result', :locals => {:poll_question => poll_question} %>
|
||||||
|
<% elsif poll_question.question_type == 2%>
|
||||||
|
<%= render :partial => 'show_MCQ_result', :locals => {:poll_question => poll_question} %>
|
||||||
|
<% elsif poll_question.question_type == 3%>
|
||||||
|
<%= render :partial => 'show_single_result', :locals => {:poll_question => poll_question} %>
|
||||||
|
<% elsif poll_question.question_type == 4%>
|
||||||
|
<%= render :partial => 'show_mulit_result', :locals => {:poll_question => poll_question} %>
|
||||||
|
<% end%>
|
||||||
|
<% end%>
|
||||||
|
</ol>
|
||||||
|
</div> <!--ur_cards end-->
|
||||||
|
<div class="cl"></div>
|
||||||
|
|
||||||
|
<!-- 分页 -->
|
||||||
|
<div class="polls_content" id="polls">
|
||||||
|
<ul class="wlist">
|
||||||
|
<%= pagination_links_full @obj_pages, @obj_count, :per_page_links => false, :remote => false, :flag => true%>
|
||||||
|
</ul>
|
||||||
|
<div class="cl"></div>
|
||||||
|
</div>
|
||||||
|
</div><!--问卷内容end-->
|
||||||
|
|
|
@ -66,6 +66,7 @@ RedmineApp::Application.routes.draw do
|
||||||
post 'commit_poll'
|
post 'commit_poll'
|
||||||
get 'publish_poll'
|
get 'publish_poll'
|
||||||
get 'republish_poll'
|
get 'republish_poll'
|
||||||
|
get 'poll_result'
|
||||||
end
|
end
|
||||||
collection do
|
collection do
|
||||||
delete 'delete_poll_question'
|
delete 'delete_poll_question'
|
||||||
|
|
Loading…
Reference in New Issue