2013年11月12日火曜日

rails with devise - ログアウトでエラー

最近rails4を学習中。
認証機能にdeviseを使用していてログアウトのリンクを生成しクリックするとエラーとなる。
No route matches [GET] "/users/sign_out"
rake routesを確認すると
destroy_user_session DELETE /users/sign_out(.:format)      devise/sessions#destroy
となっているということは、DELETEがうまく無いってことらしい。
そこで、config/initializers/devise.rb の該当箇所をdeleteから
config.sign_out_via = :get
に変更し、serverを再起動してみたら上手くいった。

2013年11月5日火曜日

instagram api

instagramのapiを使う

ハッシュタグで検索した結果を出力する。
access_tokenが必要なので先に取得をしておく。
jqueryを使ってこんな感じで関数を準備。
id=instagram があればapiを叩く様にする。
jQuery(function ($) {
        if ($('#instagram').length > 0) {
            ajaxSearchInstagram();
        }
    });
});
function searchInstagram() {
    var tag = 'piaggio';
    var url = 'https://api.instagram.com/v1/tags/'+tag+'/media/recent';
    var params = new Object();
    params['access_token'] = 'ここに取得したaccess_token入れる';
    $.ajax({
        type: "GET",
        url: url,
        data: params,
        dataType: 'jsonp',
        cache: true,
        async: true,
        global: true,
        success: jsonInstagramDrawLightBox,
    });
    return false;
}
function jsonInstagramDrawLightBox(ua) {
    var va = ua.data;
    $.each(va, function (i) {
        $('#instagram > ul').append($('<li/>').append($('<a/>').attr({
            'data-lightbox': 'ciao',
            'rel': 'lightbox',
            'href': va[i].images.standard_resolution.url,
            'title': va[i].caption.text
        }).append($('<img />').attr({
            src: va[i].images.thumbnail.url,
        }))));
    });
    return true;
};

サンプル

http://cramps.psychobil.ly/instagram.html