Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## associantions model
- class Quiz < ActiveRecord::Base
- attr_accessible :title, :jumlahpertanyaan, :jumlahjawaban, :pertanyaans_attributes
- has_many :pertanyaans, :dependent => :destroy
- accepts_nested_attributes_for :pertanyaans
- end
- class Pertanyaan < ActiveRecord::Base
- attr_accessible :content, :quiz_id, :jawabans_attributes
- belongs_to :quiz
- has_many :jawabans, :dependent => :destroy
- accepts_nested_attributes_for :jawabans
- end
- class Jawaban < ActiveRecord::Base
- attr_accessible :content, :correct, :pertanyaan_id
- belongs_to :pertanyaan
- end
- ## Step Pertama
- ## quizzes_controller.rb
- def new
- @quiz = Quiz.new
- end
- def create
- @quiz = Quiz.new(params[:quiz])
- if @ujian.save
- redirect_to quiz_steps_path(:quiz_id => @quiz.id), notice: "Silahkan buat pertanyaann untuk " + @quiz.nama + "."
- else
- render :new
- end
- end
- ## form quizzes/new.html.erb
- <%= form_for @ujian, :url => create_ujian_subdomain_path(@ujian), :method => :post do |f| %>
- <div class="field">
- <%= f.label :title %><br />
- <%= f.text_field :title %>
- </div>
- <div class="field">
- <%= f.label :jumlahpertanyaan %><br />
- <%= f.text_field :jumlahpertanyaan %>
- </div>
- <div class="field">
- <%= f.label :jumlahjawaban %><br />
- <%= f.text_field :jumlahjawaban %>
- </div>
- <div class="actions">
- <%= f.submit ( "Next" ), :class => "btn btn-inverse btn-medium" %>
- </div>
- <% end %>
- ## Step Kedua
- ## quiz_steps_controller.rb
- include Wicked::Wizard
- steps :pertanyaan
- def show
- @quiz = Quiz.find(params[:ujian_id])
- jumpertanyaan = @quiz.jumlahpertanyaan
- jumjawaban = @quiz.jumlahjawaban
- jumpertanyaan.times do
- pertanyaan = @quiz.pertanyaans.build
- jumjawaban.times { pertanyaan.jawabans.build }
- end
- render_wizard
- end
- def update
- @quiz = Quiz.find(params[:quiz])
- @quiz_attributes = (params[:quiz])
- render_wizard @quiz
- end
- ## form pertanyaan.html.erb
- <%= form_for @quiz, :url => wizard_path do |f| %>
- <fieldset>
- <%= f.fields_for :pertanyaans do |builder| %>
- <%= render "form_pertanyaans", :f => builder %>
- <% end %>
- </fieldset>
- <div class="actions">
- <%= f.submit ( "Simpan" ), :class => "btn btn-inverse btn-medium" %>
- </div>
- <% end %>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement