ActiveRecord モデルのインスタンスで前後のレコードを取得したかったのですけど、Rails 標準の API では見つかりませんでした。some_instance.previous, some_instance.next で、some_instance の前後レコードのインスタンスを取得できるようにしたかった。 — 環境 — rails 4.1 activerecord 4.1
— 環境 — rails-4.0.1 devise-3.2.2 omniauth-1.1.4 クラス変数に「今日の言葉」と「保存済み日付」の情報を持たせる トップページに表示させるためなので、HomeController の index アクションに追加。 app/controllers/home_controller.rb class HomeController < ApplicationController @@date_info = nil @@todays_word = nil def index # detect user's timezone if user_signed_in? timezone = current_user.time_zone else timezone = User.get_user_timezone(cookies["timezone"]) end @
Twitter からのレスポンスデータが大きいのが原因 原因を調べたところ、OAuth 認証で、Twitter が返すレスポンスデータの extra section のデータが大きすぎるためであるらしい。 ruby on rails – Devise for Twitter, Cookie Overflow error? – Stack Overflow 解決策をググってみたのですけど、セッションの保存先を Cookie から ActiveRecord に変更する方法を解説しているページが多かった。 セッションにあまり大きなデータを格納するのも気持ち悪い気がしたので、この stackoverflow に書いてあった方法で extra はセッションに格納しないようにしました。 OAuth 認証用のコールバックメソッド 以下、Devise + OmniAuth を使った OAuth 認証用のコ
— 環境 — Rails 4.0.1 Devise 3.2.2 Devise のデフォルトでのマイグレーション Devise のデフォルトは、:database_authenticatable, :recoverable, :registerable, :rememberable, :trackable, :validatable のモジュールが有効で、以下がモデル名を user としての初期導入した時の、DBテーブル作成用のマイグレーションとなります。 class DeviseCreateUsers < ActiveRecord::Migration def change create_table(:users) do |t| ## Database authenticatable t.string :email, :null => false, :default => "" t.str
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く