諸々確認

ようやく何かができるようになった日曜午後 3 時過ぎ (遅
とりあえず Rails 方面ですが

  • User モデルと Conn モデル関連付け
  • Heroku で devise なログインができるように

なあたりが何とかなればあとは Fog で関連付いてるソレが出力できるようになるはず。

とりあえず

migration なナニは以下で良いのかどうか。

$ rails g migration add_user_id_to_conn user_id:integer

で、belongs_to と has_many を云々すれば良いのかな。以下なカンジのナニが出てきました。

class AddUserIdToConn < ActiveRecord::Migration
  def change
    add_column :conns, :user_id, :integer
  end
end

で、rake db:migrate すりゃ良いのかどうか。一応、sqlite なナニには反映されている模様。で、model にも記述を追加したのですが、これってどーやって動作の確認すりゃ良いのかな。

$ rails c
Loading development envitonment (Rails 3.2.13)
irb(main):001:0> a = User.new
(出力略
irb(main):002:0> a.conns
=> []

を、なんとなくイケてる感。あとはアレだな。ConnsController はログインしてないと、という状態にするにはどーすりゃ良いのやら。controller の before_filter に云々、なのか。以下を追加で良いらしい。

before_filter :authenticate_user:

つうか、やっぱ RSpec で云々、なナニをちゃんとしないとマズいな。

とりあえず

一旦ここで離脱します。メシ作ってゆっくりこちらを云々な方向ってことで。

メシ製造終了

ええと、とりあえずローカルでメイルな認証ができるようにしてみます。
とりあえず、config/environments/development.rb を修正せよ、とありますね。

  # Don't care if the mailer can't send
  # config.action_mailer.raise_delivery_errors = false

こうして、以下を追記とのこと。

config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
    :address => 'smtp.gmail.com',
    :port => 587,
    :authentication => :plain,
    :user_name => 'hrendoh@gmail.com',
    :password => '****'
  }

あとはサインアップ時に確認メイルを、という事で app/models/user.rb の devise メソドを云々、というナニ :comfirmable を追加とのことで以下。

  devise :database_authenticatable, :registerable, :comfirmable,
         :recoverable, :rememberable, :trackable, :validatable

げ、migrate を修正して云々とあるのですが rake db:migrate 実行済みだな。修正して再度ナニするとどうなるか。以下、全部コメント解除なのかな。

      ## Confirmable
      # t.string   :confirmation_token
      # t.datetime :confirmed_at
      # t.datetime :confirmation_sent_at
      # t.string   :unconfirmed_email # Only if using reconfirmable

とりあえず以下で何とかなったみたい。

$ rake db:migrate:reset
$ rake db:migrate

で、devise の view はスデに app/views 配下にあるので、まず localhost なソレで確認してみます。つうか rspec がorz
そちらはローカルで動いたのを確認してから、にするかどうか。あるいはもうちょいアレしてそちら方面に着手するかどうか。

Net::SMTPAuthenticationError

二段階認証? と言いつつ Google さんにパスワードを発行してもらわねば、なのか。以下なカンジで OK でした。

  config.action_mailer.delivery_method = :smtp
  config.action_mailer.smtp_settings = {
    :enable_starttls_auto => true,
    :address => 'smtp.gmail.com',
    :port => 587,
    :authentication => :plain,
    :user_name => 'yamanetoshi@gmail.com',
    :password => '******',
    :password => 'xxxxxx'
  }
end

参考にさせて頂いたのは以下なエントリおよびコンテンツです。

とりあえずログインできました。諸々整理しつつ先に試験をナニします。