(рельсы 2.2.2)
У меня 2 модели, пользователь и подписка. Каждый пользователь может иметь одну или несколько подписок (= услуги премиум-класса). Ниже атрибутов:
- пользователь: id, имя пользователя, ...
- подписка: идентификатор, идентификатор_пользователя (FK), тип, начальный_от, оконченный_ат
Занятия:
class User < ActiveRecord::Base
..
has_many :subscriptions, :dependent => :destroy
..
end
class Subscription < ActiveRecord::Base
belongs_to :user, :foreign_key => :user_id
end
Теперь я хочу сделать часть пользовательского интерфейса, где существующие пользователи могут подписаться в своей учетной записи на услуги премиум-класса. Поэтому я хотел сделать первую простую версию, где пользователь может подписаться, установив флажок. Это то, что я так далеко
<div class = 'wrapper'>
<%= render :partial => "my_account_leftbar" %>
<% form_for @subscription, :url => subscribe_user_path(current_user) do |f| %>
<div class="field">
<%= (f.check_box :type?) %> <!-- add '?'after the symbol, source: https://github.com/justinfrench/formtastic/issues/269 -->
</div>
<div class="actions">
<%= f.submit "Subscribe", :class => "button mr8" %>
</div>
<% end %>
</div>
Проблемы:
- приложение вставляет запись в базу данных, но атрибут, который я определил в форме (типе), не был установлен (он должен установить «1», что означает «стандартная подписка»). Как заставить приложение установить этот атрибут?
- как настроить ФК? Я предполагаю, что рельсы должны установить FK автоматически, это предположение верно?
- как установить другие значения 'start_at' и 'termin_at? Это значения даты и времени (отметка времени) ...
Просто исчерпайте мои знания по рельсам для начинающих, любая помощь действительно ценится ...