読者です 読者をやめる 読者になる 読者になる

Matthewの備忘録

忘れたときはここを見ろ。何か書いてある。

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その7

RoR

前回の続き。 matthew.hatenadiary.jp i18n 参考にしていたサイトのページではi18nについては触れられていないので書いておく。 例えば日本語化したいとき、config/locale/ja.ymlというファイルを作っておき、config/application.rbのclass application内に…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その6

RoR

さて、これまで幾つかの方法を記しておいたが、どれもアドホック、その場凌ぎの辛うじて小規模な開発で許されるような拙い方法であることは否めない。もっとRoRに相応しい洗練された美しい方法がある。その方法を用いなければ、例えば親子関係があるテーブル…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その5

RoR

実は、これまでフォーム専用クラスや特異メソッドを使ってフォーム専用の変数/属性/フィールドを用意してきたが、モデルにそれのアクセサー、必要があればそのバリデーションを書くだけで機能する。しかも、調べ切ったわけではないが、何の副作用もない*1…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その4

RoR

記しておかなくてもよいとおもったが、バリデーションは次のように書けることは記しておこう: class AddressBook < ApplicationRecord validates :address, presence: true, length: { maximum: 10, message: "区切り記号の半角空白も含めて10文字以内にし…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その3

RoR

前回まではフォーム専用の代理クラスを作っていたが、特異メソッドを加えることでモデルにない属性をフォーム入力項目にしてしまえるもう一つの方法があるので記しておく。 特異メソッド 特異メソッドについては次を参考にすればよい: Rubyist Magazine - R…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その2

RoR

前回のままでは実用的ではないので、ストロングパラメーターとバリデーション、そしてi18nについて記しておく。 参考: matthew.hatenadiary.jp ストロングパラメーター ストロングパラメーターの振る舞いについては次の記事が詳しいので見て欲しい。参考(…

RoRでDBテーブルのカラムと一致しない項目がある入力フォームを実現する その1

RoR

RoRでサイトを構築していると、DBのテーブルに存在しないか、テーブルにカラムがない項目を入力して何かさせたくなることがある。検索機能はその一つであろう。その方法は既に沢山の方によって英語や日本で紹介されている。次はその一つ: qiita.com 検索機…

Rails Serverが立ち上がらなくなったら

RoR

開発作業中に、Railsサーバー稼動中のOSがシャットダウンすることはあるだろう。その状況からOS再起動後にRailsサーバーが起動できないことがある。そんなときはテンポラリにある全ての情報を一掃すると解決することがある。Railsアプリを配置したディレクト…

VirtualBoxとVagrantによる同一仮想環境の提供 その4

おそらくWindows 10 Creator's Updateのせいだとおもっているが、Vagrantのインスタンスがup/resumeできなくなった。それしようとすると次のエラーがでる: PS %HOMEPATH%> vagrant resume ==> default: Resuming suspended VM... ==> default: Booting VM..…

rbenv で複数の Ruby 環境を整える その1

公私ともに Ruby を扱うことが多くなってきたのと、バージョンが異なる Ruby を動かさなくてはならなくなったので、rbenv を導入してバージョンの異なる Ruby を使っていくことにした。因みに、Bash on Ubuntu on Windows 上、そして Virtual Box と Vagrant…

Windows Subsystem for Linux 環境整備その4

2017年4月11日にWindows 10の大幅なアップデートが開始されたので、私も所有・管理するPCのアップデートを行った。それに伴いWindows Subsytem for Linux及びBash on Ubuntu on Windowsの更新を行うことにした。当初はbash上からdist-upgradeだけで済むと考…

Future Funk

最近、Youtubeにて、Future Funkなる音楽分野を見つけた。80年代あたりの日本も含めた曲のサンプリング音源をベースとして、現代風のリズムセクションやベースラインを重ね合わせたものである。中には、ボーカルのピッチを何オクターブも上げてあるものや、8…

RoRで「テーブルごとに初期データを登録する」に補足

とある自発的なプロジェクトのためにソフトウェア開発をしています。RoRを利用しているのですが、所謂車輪の際発明をしたくないので、先人のお知恵を拝借しているのですが、その一つに「テーブルごとに初期データを登録する」というテーマで解説記事とスニペ…

VirtualBoxとVagrantによる同一仮想環境の提供 その3

Vagrant を使って Virtual Box のイメージのスナップショットを同じ名前で録っていたら削除できなくなったので、イメージを全て削除して構築しなおすことにした。Virtual Box / Vagrant 内部ではスナップショット毎に個別の ID が割り当てられてはいるが、時…

Windows Subsystem for Linux 環境整備その3

前回、Bash on Ubuntu on Windows が起動しなくなり、再インストールしたが、実はその前に /home を移動してあったので、それを戻そうと思った。しかし、Windows 上で移動したファイルやフォルダは Bash に直接持って行っても見えないし、扱えない。そこで、…

Windows Subsystem for Linux 環境整備その2

突然 Bash on Ubuntu on Windows が起動しなくなった! スタートメニューのUbuntuアイコンをクリックすると直ぐに消えて全く起動しなくなった。仕方なく、/homeディレクトリを丸ごと退避して、アンインストールし、直ぐに再インストールしようとしても次のエ…

VirtualBoxとVagrantによる同一仮想環境の提供 その2

先日、とりあえず、VirtualBoxとそのCLIラッパーとも言うべきVagrantによる同一開発環境の構築を試みて備忘録を記してみたが、もう一つの辿り方があったので、記しておく。 matthew.hatenadiary.jp vagrant upから始められる いきなりVagrantfileが書けるな…

VirtualBoxとVagrantによる同一仮想環境の提供 その1

或る組織とプロジェクトを立ち上げたのだが、要らぬ手間暇をかけたくないので、開発者や試験者に同一環境を用意しようと提案してくれた方がいたので、賛同し、使ってみた。その手順や陥りやすいミスなどがあれば記しておこうという備忘録である。 入手とイン…

RubyでCLIコマンド作成 その1

某プロジェクトでRailsアプリサイトを作る前にRubyに慣れるために既存のソフトウェアのRuby版を作ることにした。とりあず、次のサイトを参考にして、「サクッ」とスケルトンぐらいはつくることにした。 qiita.com www.mk-mode.com morizyun.github.io bundle…

小型船舶操縦士一級取得へ向けて その1

業務命令で小型船舶操縦士一級取得を目指すことになりました。お値打ちな短期間取得機会に申し込むことになりました。試験日まで日数がかなりありますが、絶対合格のために、今から予習していきます。 とりあえず、1日2時間程度、買っておいた教本を読み込む…

Bash on Ubuntu on Windows に ghc をインストールできない。

Haskellプログラムを実行する必要があり、Bash on Ubuntu on Windows にて次のコマンドを実行してインストールをしてみたところ、 $ sudo apt-get install haskell-platform libncurses-dev ・・・ libghc-unordered-containers-dev libghc-vector-dev libgh…

CUnit

Bash on Ubuntu on WindowsでCを使ってプログラミングする必要があり、CUnitを使いたくなったので、そのインストール備忘録。 $ sudo apt-get install libcunit1 libcunit1-devlibunit1-devもインストールしないとヘッダーファイルなどがインストールされな…

飯寿司熟成室温湿度モニタリング その1

IoT

夏季の昆布乾燥室を冬季には飯寿司熟成室に転用している。今夏に「昆布乾燥室温湿度モニタリング」と称して乾燥機を使った昆布を乾燥させている小屋の室温と湿度を計測したが、今度は飯寿司を熟成している部屋の温湿度をモニタリングしてみる。「昆布乾燥室…

pyenvとvirtualenvの導入

Pyenvのインストール Python2系と3系を両方必要とするため、ディレクトリ毎に実行するPythonバージョンが切り替えられるpyenvと、パッケージのインストールとバージョン管理をディレクトリ毎に行えるvirtualenvを導入することにした。詳しいことは、次のブロ…

MicrosoftのPaintにTEDDYが取り込まれた?

IT

Windows 10で動作する機能が追加されたペイントが近々公開・アップデートされるそうだ。追加された機能のなかで、手書きでかいた囲み線から三次元オブジェクトを作成するものがあるが、この機能によく似ている15年ぐらい前に発表・開発されたJavaで書かれ…

Windows Subsystem for Linux 環境整備その1

VMWareのUbuntuイメージが壊れたので、ちょうどよい機会とばかりに、Windows Subsystem for Linuxの環境を整えることにした。Windows 10 バージョン1607以降を前提とする。 機能有効化 次のサイトを参考にして、Windows Subsystem for Linuxを有効にする。ww…

Riemann hypothesis

リーマン予想のゼロ点について20分以内で最もちょうどよくまとめていると思う動画を見つけた。 youtu.be 日本語訳をつけたしてみたい。

農山漁村余暇法

ひょっとすると引き継ぐことになるかもしれない某事業で人手不足の一助となり、尚且つ僅かであろうが収入源の足しになるかもしれない、民泊と就労体験を合わせたものを提供するために幾つか知っておいて損はないことを記しておく。 旅館業法によると客室の面…

こじはる予想考察 その1

あの「こじはる予想」が、昨年に引き続き、今年も年間収支がプラスになることが確実になったと耳にした。まぐれ当たりではなさそうなのと、どういう手法で予想しているのかを分析することに興味が沸いたので、先ずはどれだけ当てているのか調べてみることに…

ウェアラブルカメラ

最近、情報が溜まり過ぎてきたので整理をしている。種類が多いだけで、個々の情報量はとても少ない。 ウェラブルカメラ 2016年の東京マラソンではどうだったのかわからないが、少なくとも2015年ではランニングポリスと呼ばれる警察官がウェラブルカメラを身…

sshd

IT

VirtualBoxのゲストOS(Ubuntu 12.04 LTS)からホストOSへコピペしたいときがあり、うまくいかないときがあるので、ホストOSからsshクライアントで接続して作業することにした。sshサーバーのパッケージは最初から $ apt-get update $ apt-get install openssh…

Emacs24

IT

久々に動かしているUbuntu環境でEmacsが使いたくなったのでapt-get instlal emacsを実行していしまい、バージョン23がインストールされてしまった。これでは最新の設定解説資料と合わない。利用しているUbuntuは12.04 LTSなので、次のようにリポジトリを追加…

VirtualBoxのファイル共有

IT

久々にVirtualBox上で動かしたUbuntuで作業したが、ホストOS側とのファイル共有で忘れがちなことがある。ホストOS側でGuest Addtionsをインストールしなくても次の設定で共有は可能である。 ホストOS側で共有したいディスクまたはフォルダの共有を有効にする…

ファイル名の置換

IT

コンピューターに触って四半世紀以上過ぎたが、ファイル名の置換は何度となく行ってきた。大量に行いたい度にやり方を考えたり、解説サイト探してきた。今回も検索して、最も簡単な方法にたどり着いた。これまでsedなどを利用してbashワンライナーなどを書い…

昆布乾燥室温湿度モニタリングシステム その6

IoT

たぶん、昆布乾燥室の温度と湿度をスマフォで確認しているのは世界中見渡してもウチだけではないかと思っている。ひょっとしたら数年前に実現していた人がいたかもしれないが、Raspberry Pi 3 model B+、DHT11、Google Drive API(スプレッドシート)の組み合…

昆布乾燥室温湿度モニタリングシステム その5

IoT

推奨されていたので、「はてなダイアリー」からこの「はてなブログ」に引っ越した。本当は、記事を書きためておけるから、こうしたのである。 cron Raspberry Piの設置作業の度に端末からgoogle_spreadsheet.pyを実行していたのでは手間である。そこで、cron…

昆布乾燥室温湿度モニタリングシステム その4

IoT

忙しくて書き留めておく時間がなかなか確保できずその3から時間が経ってしまった。 AWSIoTを利用しようかと思ったのだが、Google Spreadsheetを利用したほうが簡単そうなので、先にそちらで、遠隔地のスマフォからグラフを見れるようにした。参考サイト: Co…

昆布乾燥室温湿度モニタリングシステム その3

IoT

温湿度が計測できることは確認できたので、情報を保存し、その情報を可視化し、家庭内ネットワーク内の他の機器・端末からグラフの閲覧を可能にすることにした。利用するのは資源監視ソフトウェアのMUNINである。MUNINについては検索すれば非常に詳しく、日…

昆布乾燥室温湿度モニタリングシステム その2

IoT

温湿度を計るのだから、Raspberry Piだけではなく、温湿度センサーが必要である。手ごろで手に入り易く、接続実績が多く公開されているDHT11という温湿度センサーを秋月電子通商から通販で入手しておいた。DHT11についても、秋月電子通商についても、多数の…

昆布乾燥室温湿度モニタリングシステム その1

IoT

久々に新しい記事を書くのにこのダイアリー(ブログ)を使った。下書き保存のUIが優れていないせいで、冒頭の文章を失った。「下書き保存」を押下したらとりあえず保存して欲しい。この文章は二度目に書いたものであり、最初に書いたものとは文章の流れ以…

枝幸のモバイラーズスポット2016

先日(2010/07/15)、wifiスポット(無線LAN)に接続するためにキャンプ地から自転車で8kmも往復していたキャンパーがいたので、不憫に思い、モバイラーズのための情報を記しておくことにした。 場所 wifi 電源 時間帯 備考 ウスタイベ千畳岩キャンプ場 なし …

枝幸のモバイラーズスポット2015

先日(2010/07/15)、wifiスポット(無線LAN)に接続するためにキャンプ地から自転車で8kmも往復していたキャンパーがいたので、不憫に思い、モバイラーズのための情報を記しておくことにした。情報を刷新したので最新記事へ移動してください。

Sapphire #3 : githubにガワだけのgemをおいた

githubに何もできない「ガワ」だけのgemをおいた。https://github.com/Matthew238/sapphire-exp-envに置いてある。これから、iseqを依存させたり、サンプルのSapphireプロトタイプを載せたいと思う。jewelerを使ったgemの作成方法を詳しく書こうと思ったが、…

gemの作り方

どの方法が最適なのか、わからないので、現状のgemの作り方を調査。 The Ruby Toolboxのgem creationで計測されているスコアをみると、 newgem bones echoe hoe simple-gem inochi などをはるかに引き離してjewlerのスコアが高い。これを使ってみよう。

開発用のgemがあってもよさそうだ

Rubyでもできていることを態々やることはない。できていないこと、将来必要とされることのために、実験的、先駆的でありたい。しかし、その前にやることはたくさんあるはずだ。そして関数型言語だけにこだわる必要はない。研究・開発し尽くされているものを…

関数型言語Sapphire

RubyのVMを利用した関数型言語Sapphireを開発する。 そもそもは、どのプログラミング言語もそうであろうが、ある側面において、半世紀前に誕生したLispに近づく。そしてここ最近のトレンドは関数型言語、またはそれと同じことができること。だったら最初から…

Ubuntu上RailsとRVM環境覚書

Rails 3.1も出たし、書き直しておく。 骨子をいうと、gemsetを次のように用意し、運用するということである。 global gemset : rake しかない passenger gemset : passenger 用 rails3.1 gemset : 素のrails3.1しかない 任意のRailsアプリ gemset: rails3.1…

WordPressで下書き(ページプレビュー)がみれないと思っていたら、.htaccessの問題ではなく、wp-config.phpのsaltの問題でもなく、単に公開ページと管理ページのFQDNが異なることが原因であった。URLが異なる場合の対処方法を参考にして、公開用フォルダの…

名寄市のモバイラーズスポット

まだ、情報整理中ですが、検索で出てこない次のポイントがありました。 場所 wifi 電源 時間帯 備考 喫茶ドミール あり なし 10:00-21:30 電源は店主に尋ねてみるとよいかも。wifiはここのFONじゃないかも(笑)。 サンピラー交流館 あり なし おおよそ10:00…

枝幸のモバイラーズスポット

先日、wifiスポット(無線LAN)に接続するためにキャンプ地から自転車で8kmも往復していたキャンパーがいたので、不憫に思い、モバイラーズのための情報を記しておくことにした...情報を刷新したので最新記事へ移動してください。