Ruby

【Rails4】【heroku】PDFを生成する

環境 Rails 4.1.8 CentOS(開発環境) heroku 目的 Railsで画面をPDFで出力できるようにする herokuでも上記のことができる 1. PDF出力Gemの選定 いくつかあるが、今回は画面をそのままPDF出力できればよいのでPDFkitかWicked PDFの二択だった。 PDFkitの方がP…

【Rails4】【heroku】NewRelic をherokuにインストールする

環境 Rails 4.1.8 NewRelic heroku 目的 herokuNewRelicをインストールする herokuがsleepするのを防ぐ1. heroku コマンドでnewrelicをインストールする heroku addons:add newrelic:stark 2. Gemfile に以下を追記して、bundle installする gem 'newrelic_r…

【rails】【heroku】【bootstrap】herokuでCSS、font、JavaScriptが反映されない。

環境 Rails 4.1.8 Bootstrap3 twitter-bootstrap-rails 3.3.2.0 heroku 目的 herokuでbootstrapのCSSやfontが反映されること fontawesomeが見つからないエラーが出ないこと1. config/environments/production.rb の設定を書き換える config.serve_static_ass…

【Rails4】【heroku】【CentOS】sessionストアにRedisを使う

環境 Ruby 2.1.5 Rails 4.1.8 CentOS 6.6 heroku 目的 RailsアプリのセッションストアをキャッシュからRedisに切り替える 開発環境にRedisサーバを立てる 本番環境はherokuでRedisのアドオンを入れる 1. 開発環境(CentOS)にRedisサーバを立てる # 参考にした…

【Rails4】【Ajax】インジケータを表示させる

環境 Rails 4.1.8 jQuery 目的 Ajax通信中にインジケータ(グルグル)を表示させて、通信終了後に非表示にする。 インジケータ表示中はモーダルの様に半透明のレイヤーを被せて、ボタン押下等ができないようにする 1. インジケータ(グルグル)のgif画像をDLし、…

【Rails4】Dropboxにファイルをアップロードする

環境 Ruby 2.1.5 Rails 4.1.8 目的 RailsアプリからDropboxにファイルをアップロードする 0. Dropboxアカウントを取得し、下記からDropboxのアプリを作成する Login - Dropbox ※キャプチャが少し古いが下記のサイトが参考になる Dropbox APIをRuby on Rails…

【Rails4】ActionMailerを使う(heroku からメールを送信する)

環境 Rails4.1.8 heroku SendGrid 目的 productionモード(heroku)でメールが送れるようにする 1. herokuにアドオン SendGridをインストール # heroku login # heroku addons:add sendgrid:starter 2. herokuから設定を取得 # heroku config:get SENDGRID_USE…

【Rails4】I18nでエスケープさせない + DBのないモデルの日本語化

環境 Rails 4.1.8 Bootstrap3 twitter-bootstrap-rails 3.2.1 目的 1. 改行を含む文章をI18nで定義する 2. DBのないモデルのattributsを日本語化する1. xxx_html で定義するとエスケープされない # config/locales/ja.yml body_html:| 1行目<br /> 2行目 # View …

【Rails4】【Ajax】非同期でファイルをアップロードする

環境 Rails 4.1.8 Bootstrap3 twitter-bootstrap-rails 3.2.1 目的 Railsのフォームヘルパーを使い、Ajaxでファイルをアップロードしたい。 form_forでremote:trueしただけではActionController::InvalidAuthenticityTokenというエラーになる。1. gem のイン…

【Rails4】【bootstrap3】アイコンフォントを表示する

環境 Rails 4.1.8 Bootstrap3 twitter-bootstrap-rails 3.1.1 目的 gem でbootstrap3をインストールして、bootstrap3アイコンフォントが表示されること1. fontsファイルをコピーする bundle install したtwitter-bootstrap-railsのフォルダからfontsファイル…

【Rails4】【bootstrap3】郵便番号から住所検索する。

環境 Rails 4.1.8 Bootstrap3 目的 郵便番号を入力し、検索ボタンを押下すると、住所欄に検索結果が自動補完されること。 郵便番号欄にフォーカスが当たるとツールチップが表示されること*1 ソースコード 郵便番号検索には「AjaxZip3」というライブラリを使…

Rails3.2でネストしたモデルのバリデーションエラーの日本語化

なかなか苦戦したので備忘録として、バリデーションのかけ方とメッセージの日本語の2本立てRails3.2 ネストしたモデルのバリデーション 例)お客(Customer)に注文(Order)が1対多で紐づく場合、 お客を登録した時に一緒に注文も複数個登録したい Model # custo…

久しぶりにherokuにpushしたら出たエラーとその対処法

datepickerを追加して出たエラー Ruby 1.9.3 Rails 3.2 エラー couldn't find file 'jquery-ui' 対処法 # assets/javascripts/application.js //= require jquery //= require jquery-ui ↓ # assets/javascripts/application.js //= require jquery //= requ…

Rails3 axlsx でxlsxファイルを作成しダウンロードする

前の記事で課題だった部分を別のライブラリ(axlsx)を使って解決。 ただし、axlsxはエクセルの読み込みはできないため、都度書式等を作成することになる。 axlsxの日本語での情報が少ないので、参考になればと。 作成したコードの一部抜粋・改変のため、コピ…

Rails エクセルを作成してダウンロードする

目的 ・Rails でDBのデータをエクセルに帳票として出力して、ダウンロードできるようにする ・エクセルは Spreadsheetで作成 ・帳票は予めテンプレートを用意し、値を書き込む ・エクセルファイルは画面からダウンロード 課題 ・※1:列幅がデフォルトで保存…

Rails3とjQueryでAjax更新

セレクトボックスを選択したら非同期通信でDBを更新する セレクトボックスを変更した時点で非同期通信でDB更新、最新の状態を表示する。 formの:remote => true のようにボタンを用いないAjaxの実装。 一覧画面でステータスのみを更新したり、フィルター機能…

Rails3.2 で認証機能を作る

目的:認証機能(ユーザは予めDBに登録) 参考 http://starryskylogic.blogspot.jp/2012/04/ruby-on-rails32.html1.Gemfileにbcryptrubyを追加 Gemfile内のgem 'bcrypt-ruby', '~>3.0.0~のコメントアウトを外した上でbundle install2.User modelの作成 rails g…

Ruby1.9でcsvファイルをダウンロード(エンコード問題にも対応)

Ruby1.9系 Rails3でcsvファイルをダウンロードする(エンコード問題にも対応) Rails 3.2.3 ruby 1.9.3下記ソースでひとまず動いている require 'kconv' require 'csv' columns = Person.all file_name = Kconv.kconv("sample.csv", Kconv::SJIS) header = ["…

Colud Foundry を試してみた(Windows編)

Cloud Foundry上にアプリを構築をやってみた(Windows編) VMwareが始めたPaaS "Cloud Foundry"を試しに使ってみる。 最初は英語のマニュアルしかなく、アカウントが発行されるまでのつなぎで 訳したりしてたら、日本語訳がコミュニティサイトに登場↓↓ でもWin…

チェックボックスを利用したSQLでの検索

配列内の値のいづれかを含む場合 チェックボックスで選択した条件で検索する場合のSQL ary = [1,2,5] condition = ['category = (?)', ary] ポイントは(?)。通常は 'category = (1,2,5)'となるから、?は()の中に入る事になる。 condition = ['category = ?',…

Ruby SMTP メール

Rubyでメールを送信する RubyにはSMTPを扱うライブラリがある。 単にメールを送る require 'net/smtp' #SMTP.start でセッションを開く #第一引数がサーバのアドレスで第二引数がポート番号 #ブロックを使うとセッションの終了を自動的にやってくれる。 Net:…

正規表現リテラルのオプション  

i:正規表現はマッチ時に大文字小文字の区別を行わない o:一番最初に正規表現の評価が行われた時に一度だけ式展開を行う m:複数行モード。正規表現 "." が改行にもマッチするようになる x:正規表現中の空白(改行も含む)を無視する。 また、バックスラッシ…

RubyでExcelを操作する

xlsデータを読み込むためにはいくつかの方法があるらしい。 Win32API、ParseExcelやSpreadsheetというライブラリがあるようだ。 Win32APIはWindows環境以外だと動かないらしい。 用語 パース:プログラムのソースコードやXML文書など、一定の文法に従って記…

win32loeを用いてRubyでVBAを使う(SortとInsert)

挿入と並び替え #Rangeオブジェクトのプロパティのように「Insert」を書くだけ #Rangeをうまく変えることでセル、列、行の挿入ができる sheet.Range("C:C").Insert Rangeは手動で挿入を行う時にアクティブにするセルと同じなので容易 #あるカラムを基準に並…