Automatycznie wstawiany klucz obcy

Mamy sobie dwie tabelki - accounts i users :slight_smile:

modele są takie

[code]class User < ActiveRecord::Base
has many: accounts
end

class Account < ActiveRecord::Base
belongs_to :user
end[/code]
Przy tworzeniu nowego Konta automatycznie generowany jest numer konta (losowy) za pomocą czegoś takiego

Account.new do |acc| chars = ("0".."10").to_a num = "" 1.upto(26) { |i| num << chars[rand(chars.size-1)] } acc.number=num acc.save end
W tabelce accounts jest user_id czyli klucz obcy

i pytania są takie: :slight_smile:

  1. W którym miejscu (kontroller, model) wstawic najlepiej taki blok zeby przy tworzeniu użytkownika (nowego rekordu w tabeli users) automatycznie też generował mu losowo konto? (nie chodzi o sumy kontrolne itp…po prostu zeby był numer składający sie z 26 cyferek :slight_smile: :slight_smile: )
  2. Jak zrobić żeby przy tworzeniu losowym takiego konta dodawany był też user_id (czyli klucz obcy) o takiej wartości jak ID usera i to samo co w pkt. 1 - czyli w ktorym miejscu coś takiego najlepiej umieścic

Z góry dziękuje Wam za wszelką pomoc :slight_smile:

class Account < ActiveRecord::Base belongs_to :user def before_create self.number = losowy_numer end end

[quote]Kod:
class Account < ActiveRecord::Base
belongs_to :user
def before_create
self.number = losowy_numer
end
end[/quote]
Chodziło mi o coś troszkę innego, zresztą nieważne bo problem juz i tak rozwiązany. Mimo wszystko dzięki za dobre chęci :slight_smile: