Как я могу передать и получить значение из datepicker?

#ruby-on-rails #sql-server-2005 #ruby-on-rails-3

#ruby-on-rails #sql-server-2005 #ruby-on-rails-3

Вопрос:

я новичок в rails. как я могу получить значение из моего datepicker, чтобы передать его другому методу, чтобы я мог выполнить свой запрос.

вот мой контроллер:

 def index
    redirect_to(:action => 'step1') 
end

def step1
    @checkin = params[:checkin]
    @checkout = params[:checkout]
end

def step2
    checkin = @checkin
    checkout = @checkout
    @amenities = Amenity.available(checkin, checkout)
end
  

мой взгляд:

     <%= label_tag @checkin, "From:" %>
    <%= text_field_tag "checkin", @checkin %>
    <%= label_tag @checkout, "To:" %>
    <%= text_field_tag "checkout", @checkout %>

    <%= button_to "Show Availability", :action => "step2" %>
  

и моя модель, в которой я запустил свой запрос:

 scope :available, lambda {
    |checkin, checkout| { 
      :select => 'amenities.*',
      :order => 'id',
      :conditions => ["
        amenities.id NOT IN 
        (
          SELECT aa.id from amenities aa, amenity_list al WHERE
          amenities.id = al.amenities_id AND
          (
            (? BETWEEN al.checkin AND al.checkout) OR
            (? BETWEEN al.checkin AND al.checkout)
          )
        )", 
        checkin, 
        checkout
      ] 
    }
  }
  

ПОМОГИТЕ! спасибо .. 🙂

Ответ №1:

Я бы использовал сеанс для сохранения между несколькими шагами. Также ознакомьтесь с плагинами / драгоценными камнями мастера форм, которые также могут выполнить эту работу за вас.

https://github.com/adkron/actsaswizard

Проверьте также этот скринкаст, который может вам помочь:http://railscasts.com/episodes/217-multistep-forms

Комментарии:

1. я думаю, что это неприменимо для моего приложения .. потому что я тоже использую корзину. я использую более одной модели. 🙁

2. затем сохраните его в объекте (cart) или около того? Я все равно сделал бы это с помощью сессии / специальной модели для этого