UPDATE 6/21/12Изменение переменной в форме, основанной на отборе в форме
У меня есть форма в рельсах, которые работают аналогично для электронной коммерции проверки.
Пользователь выбирает час старта, час, дату, время и цену (почасовые, еженедельные, ежедневные и т. Д.) В форме. У продукта уже есть установленная цена в базе данных, в которую я конвертирую (почасовые, еженедельные, ежедневные и т. Д.), Которые я хотел бы изменить в зависимости от предпочтения цены, а затем получить представленную остальную форму.
Я слежу за скринкастом Райана на dynamic select menus, но я не был уверен, как я поместил его демо в мое приложение, так как я не хочу, чтобы пользователь выбирал цену только меру (ежедневно/ежечасно ./и т.д.)
Зубчатые has_many line_items line_items принадлежит Гир и тележках
Ниже мой код:
передач Модель (где я создал ценовые переменные)
class Gear < ActiveRecord::Base
attr_accessible :title, :size, :price, :sub_category_id, :user_id, :image, :image_a, :remote_image_url, :color, :year, :latefee, :cancellation, :minrental, :policy, :about, :address, :city, :state, :zip
belongs_to :user
belongs_to :sub_category
has_one :category, :through => :sub_category
has_many :comments, :dependent => :destroy
has_many :line_items
has_many :calendars
require 'carrierwave/orm/activerecord'
mount_uploader :image, GearpicUploader
mount_uploader :image_a, GearpicUploader
before_destroy :ensure_not_referenced_by_any_line_item
validates :title, presence: true
validates :size, presence: true
validates :price, presence: true
validates :sub_category_id, presence: true
validates :user_id, presence: true
def hourly_price
price/24
end
def weekly_price
price*7
end
def monthly_price
weekly_price*4
end
end
Посмотреть
<div class="gearside_date_top">
<%= form_for LineItem.new do |f| %>
<p><%= render :partial => "price" %>/
<%= f.select :day_or_hour, [['day', 1], ['hour', 2]], :id => 'day_or_hour' %>
</p>
</div>
Частичное Выдается Просмотр
<em>from</em>
<span id="gear_daily" style="font-size: 190%; color: #94cbfc;">$<%= @gear.price %></span>
<span id="gear_hourly" style="font-size: 190%; color: #94cbfc; display:none;">$<%= @gear.hourly_price %></span>
Javascript
$('#day_or_hour').change(function() {
var $index = $('#day_or_hour').index(this);
if($('#day_or_hour').val() = '2') {
$('#gear_hourly').show();
}
else {
$('#gear_daily').show();//else it is shown
}
});
Я не могу заставить его работать.
Можете ли вы рассказать о том, каким будет выглядеть метод update_price, а также как отправить эту переменную через форму? – DaveG
Добавлено изменение с помощью метода update_price.Этот код просто дает вам представление о том, как будет выглядеть код. – MurifoX
Получил это спасибо .. – DaveG