モデルに任意の値を入れたい

モデルに関係ないチェックボックスを作って、オンのときにだけvalidateしたいので実装してみると、newからcreateで画面遷移したときに、値を保持してくれないことに悩んだ。


model

attr_accessor :duplicate
attr_accessible :duplicate

validate :overrlap

・・・

def overrlap
if duplicate=="true"
# 重複確認にチェエクがある場合だけ検査する
# チェック・オフならスルーして登録を可能にします
end
end

view

重複確認<%= f.check_box(:duplicate, {:checked => true}, true, false) -%>

controller

def create
@rental["dupulicate"] = params[:hoge][:duplicate] #この改造が許されない

viewは表示されるけど、コンソールには警告が出てくる

DEPRECATION WARNING: You're trying to create an attribute `duplicate'.

チェックボックスを常時オンにする方法でごまかした。

Windowsを再起動したらつながらなくなった

  • Windows再起動
  • Docker Quick Start Launch クリック、クジラまち
  • Kitematic mongoをStart、ACCESS_URLのポート番号が32768から32774に変わっている!
  • Kitematic Rocket.chatをStart
  • Chrome 前回のURLでは表示されない。
  • Kitematic Rocket.chatのMONGO_URLを現在のポート番号に変更する
  • Chrome 「it looks like you are trying to access mongodb over http on the native driver port.」なんてこったい!
  • Kitematic mongoをStart、ACCESS_URLのポート番号が32768に戻っている!

WindowsにRocket.Chat

課内でチャットしたいけど、Slackなどの外部には情報をだせない。

https://rocket.chat/ ロケットチャットが良さそう

インストール方法はいくつか参考にする。
http://noifuji.hateblo.jp/entry/2017/02/18/141010


Docker:インストール

確認1
Win+R > cmd > systeminfo
システムの種類 x86/x64 で確認、x64ならOK

確認2
タスクマネージャー > パフォーマンス > 仮想化:有効 だったらOK

参考:https://qiita.com/FukuharaYohei/items/a913f5ef5a5aa550f46a


https://docs.docker.com/toolbox/toolbox_install_windows/#how-to-uninstall-toolbox
Get Docker Toolbox for WindowsからDLとインストール
次へ次へ

"Docker Quickstart Terminal"をクリックしたらエラーになった。

Error with pre-create check: "This computer is running Hyper-V. VirtualBox won't boot a 64bits VM when Hyper-V is activated. Either use Hyper-V as a driver, or disable the Hyper-V hypervisor. (To skip this check, use --virtualbox-no-vtx-check)

コントロールパネル > プログラム> Windowsの機能の有効化または無効化 > Hyper-Vアンチェック
Windows OSを再起動
参考:http://ascii.jp/elem/000/000/913/913933/index-2.html

やっとDockerが起動した。(クジラがでている)

仮想IPアドレスの確認ということで
http://192.168.99.100:3000
・・・表示できません。まいっか

Kitematic

デスクトップのKitematicを起動する

Setup Initialization
We couldn't find a native setup - Click the VirtualBox button to use VirtualBox instea or Retry to check again.

RESET/RETRY SETUPが駄目、USE VirtualBoxだとConnect to Docker Hubになる。

Docker IDを取得するために https://hub.docker.com/ 
メールがやってきてIDを取得できた。

Connect to Docker HubにDocker IDを入れるとKitematicのRecommendedの一覧になった。

mongoを入力、CREATE
(ターミナルっぽい画面で止まる)
IP & PORTSACCESS URL「192.168.99.100:32768」をコピる

Containers NEWでrocket.chatを入力、officialを選択
エラーになる
Setting > MONGO_URLに「mongodb://192.168.99.100:32768/meteor」Save 勝手に再起動して動く
rocket.chatのWEB_PREVIEWの矢印を押すとブラウザが起動する(Chromeで開き直す)

IEで待てど暮らせどクルクルしているのでChromeにしたらセットアップウィザードが出た
管理者情報:名前・ユーザー名・電子メール・パスワード
組織情報:組織の種類・組織名・産業・サイズ(人数)・カントリー・ウェブサイト
サーバー情報:サイト名・言語・サーバーの種類
登録サーバ:スタンドアローン

うごいているように見える。

Oracle VM VirtualBoxマネージャー

他のPCから見えるようにする。
default右クリック > 設定 > ネットワーク > アダプター1 > 高度 > ポートフォワーディング > 追加

名前:Rule1
プロトコルTCP
ホストIP:ブランク
ホストポート:8080
ゲストIP:コピるのIP
ゲストポート:コピるのポート

ためしたけっか

Zoomでいいんじゃね?ってなった。お蔵入り。

横カレンダーを別のシートで参照して縦カレンダーにしたい

縦横が絡むとExcelって非力っていうか、言うこと聞かない。

コピー先シートに
=Schedule!D3
横方向にコピペ
Ctrl+Shift+@で数式表示
数式をコピー
テキストエディタに貼り付け
\tを\nに置換
エクセルに貼り付け

ipにポート番号を含んでいるとログインできない説

イントラにあるWinにApache入れている。

http://localhost:8080/booked/Web/

これでアクセスしてログインできたりできなかったりして頭を抱えた。

c:\apache24\conf\httpd.conf

Alias /booked "C:/Apache24/htdocs/booked"

Order allow,deny
Allow from all

C:\Apache24\htdocs\booked\config\config.php

/*$conf['settings']['script.url'] = 'http://localhost:8080/booked/Web/';*/
$conf['settings']['script.url'] = 'http:';

これでできた。

<参考>
http://php.brickhost.com/forums/index.php?topic=15418.0
https://teratail.com/questions/64609

いろいろ悩む

スケジュールで登録できない時間がある。

00:00から07:30 と 22:00から23:30 だけ登録できる。なんじゃそりゃと悩む。

スケジュール管理 > 予約できない時間枠

「予約可能な時間枠」がくせ者で、ブランクの時間を受け付けてくれない。
50分ずつとかにしたかったら、10分枠をつくらないとならない。めんどくせー

change datetime format

$dates['general_date'] = 'd/m/Y';

ってなっていて、2018/09/11 が 11/9/2018 って表示されると純粋な日本人には辛い。
血眼になってさがした。

booked\lang\en_gb.php

// change defaults here
/*
$dates['general_date'] = 'd/m/Y';
$dates['general_datetime'] = 'd/m/Y H:i:s';
$dates['schedule_daily'] = 'l, d/m/Y';
$dates['reservation_email'] = 'd/m/Y @ H:i (e)';
$dates['res_popup'] = 'd/m/Y H:i';
$dates['dashboard'] = 'l, d/m/Y H:i';
$dates['period_time'] = "H:i";
$dates['timepicker'] = 'H:i';
$dates['general_date_js'] = "dd/mm/yy";
$dates['short_datetime'] = 'j/n/y H:i';
$dates['schedule_daily'] = 'l, d/m/Y';
$dates['res_popup_time'] = 'D, d/n H:i';
$dates['short_reservation_date'] = 'j/n/y H:i';
$dates['mobile_reservation_date'] = 'j/n H:i';
$dates['general_time_js'] = 'h:mm tt';
$dates['momentjs_datetime'] = 'D/M/YY h:mm A';
$dates['calendar_time'] = 'h:mmt';
$dates['calendar_dates'] = 'd M';
*/
$dates['general_date'] = 'Y/m/d';
$dates['general_datetime'] = 'Y/m/d H:i:s';
$dates['schedule_daily'] = 'l, Y/m/d';
$dates['reservation_email'] = 'Y/m/d @ H:i (e)';
$dates['res_popup'] = 'Y/m/d H:i';
$dates['dashboard'] = 'l, Y/m/d H:i';
$dates['period_time'] = "H:i";
$dates['timepicker'] = 'H:i';
$dates['general_date_js'] = "yy/mm/dd";
$dates['short_datetime'] = 'j/n/y H:i';
$dates['schedule_daily'] = 'l, Y/m/d';
$dates['res_popup_time'] = 'D, d/n H:i';
$dates['short_reservation_date'] = 'j/n/y H:i';
$dates['mobile_reservation_date'] = 'j/n H:i';
$dates['general_time_js'] = 'h:mm tt';
$dates['momentjs_datetime'] = 'YY/M/D h:mm A';
$dates['calendar_time'] = 'h:mmt';
$dates['calendar_dates'] = 'd M';