メモです

メモです

resourcesをnestさせたモデルがHeroku上で期待した動作をしない

【問題】

resourcesをnestさせたモデルがHeroku上で期待した動作をしない

【解決方法】


schema.rbに意図していない記述が誤って混入していた。それを除去したところ期待した動作をした。

【状況】

・GroupとUserという二つのモデルがあり
group.rb 
has_many:users

user.rb
belong_to:group
という関係を持つ。

・heroku上では「https://sample.herokuapp.com/groups」のページはローカルと同じように表示されるが、「https://sample.herokuapp.com/groups/1/users 」のページは表示されず、
「We're sorry, but something went wrong. If you are the application owner check the logs for more information.」
が表示されてしまう。このときheroku log には
ActiveRecord::StatementInvalid (PG::UndefinedTable: ERROR: relation "users" does not exist」
と表示される

【解決までの流れ】

やっても解決しなかったこと
・heroku rake db:reset
ActiveRecord::NoEnvironmentInSchemaError:
Environment data not found in the schema. To resolve this issue, run:
bin/rails db:environment:set RAILS_ENV=production」が表示された

・heroku rake db:migrate RAILS_ENV=production
特に変わりなし

・heroku pg:psqlを実行し、select * from users;
「relation "users" does not exist」が表示された

・bin/rails db:environment;set RAILS_ENV=production
特に変わりなし

・herokuでアプリを一度削除。もう一度やり直す
特に変わりなし

・「heroku rake db:schema:load RAILS_ENV=production」
コマンドラインを見ると
groupsテーブルの作成は成功しているが、usersテーブルを作成しようとすると
「rake aborted! NameError:: uninitialized constant」が表示される。

usersのテーブルだけが作成できないということがusersモデルを定義するファイルがおかしいのではと考える。
結果的にschema.rbのuserモデル定義部分に全く意図していない記述が混入していた。それを除去した後に、通常通りdeployすると期待通りの表示がされた。

【感想】

・本来は設定等に起因しない単なるミスタイプが原因のエラーは知見としての有用性は低いので投稿すべきではないとは思うが、何らかの設定ミスだと思い込み初歩的なミスを犯していたことは自分のために記録に残すべきと考えて投稿した。

【教訓】

・エラー内容で検索しても全く引っかからないときは初歩的なタイポの可能性がある
・エラーログを丹念に追うことはやはり重要である
・ロジカルにエラー原因を考える。闇雲にコマンドを連発しない。今回はgroupテーブルだけが作成できているということにもっと注意を向けるべきだった。

リムパックの米空母撃沈判定について

米空母を撃沈判定するのは珍しいことではない

・2004年にカナダのディーゼル潜水艦が米空母を撃沈判定

How to Sink an Aircraft Carrier – War Is Boring – Medium

・2015年にフランスの原潜が米空母を撃沈判定

In 2015, a 30 Year Old French Nuclear Submarine 'Sank' a U.S. Aircraft Carrier | The National Interest Blog

ネットの書き込みのみでソースはないが2004年に韓国の潜水艦が米空母を撃沈判定というのもある。

 

米空母を「撃沈」が頻繁に起きる確かな理由は不明だが、ネットで検索したところ

・米空母は動ける海域が制限されており、小さな範囲を潜水艦で追い回すことができるから

・米海軍からのリムパック参加賞

・国別対抗ではなく仮想的な状況設定に基づき参加艦艇が2グループにわかれて闘うので米海軍の全力ではない。2015年の撃沈でもフランスの原潜が米海軍のP-3Cの援護下で撃沈したとある。

・操艦や連携の錬度向上を目的としているのであって、実際の戦闘行動はおまけ

・各国とも真の実力は軍事機密なので見せていない。

などが理由として挙げられている。

 

またSINKEXという名前で米海軍の退役艦艇を的にして、実際に撃沈させる訓練もリムパックでは行われている。

電磁気の用語のメモ

電位φとは

注1:電位と静電ポテンシャルとほぼ同じ意味。

注2:記号はφ(ファイ)かVで表す。

あるモノが持つ位置エネルギーはそのモノがある高さが高くなればなるほど大きくなる。(基準を地面にとった場合)

同様に、電荷をもつ点電荷からの距離が近いと大きい。離れると小さい。

(基準を電荷から電荷からの影響を受けない無限遠にとった場合)

 V=\displaystyle \frac{kQ}{r}

・電位φを偏微分してマイナスをつけると電界E(電場)になる。

 E=-grad φ

電圧とは

電磁気において電圧は二つの電位の差のことを指す。二つの電位差があると差をなくそうとする力がかかる。だからその差のことを電圧という

・電圧Vを微分すると電界E(電場)になる。

 

電場とは

電荷の周りにできるやつ。オーラみたいなやつ。オーラの中に別の電荷が入ると影響される。電場(オーラ)の強さは

 V=\displaystyle \frac{kq}{r^{2}}

 となる。ある電荷が電場の中に入ると

 F=qE

という力を受ける。

 

おまけ

 E=-\displaystyle \frac{dv}{dx}になぜマイナスがつくか?

 

detail.chiebukuro.yahoo.co.jp

マイナンバーカードは住基カードの焼き直しなのか

 要旨

マイナンバーカードは住基カードの代わりではなく、各組織が持つ情報を効率的に取得することを可能にし、行政の質を向上させる目的がある。最終的には、民間企業も含めたあらゆるサービスをカード一枚での利用を可能にする。

 

Q.

マイナンバーで便利になるのか?確定申告でマイナンバーカードと運転免許証のコピー取らされたし逆に不便になった。

 

A.

導入初期は行政の効率化が大きい。今後の機能追加は後述する。

f:id:tanaka-kiiti:20170308215025j:plain

f:id:tanaka-kiiti:20170308215246j:plain

マイナンバー 社会保障・税番号制度が始まります 入門編

http://www.mhlw.go.jp/file/06-Seisakujouhou-12600000-Seisakutoukatsukan/0000093701.pdf)より

また、マイナンバー通知カードだけだと写真がないので本人確認ができない。そのために運転免許証も添付する必要がある。マイナンバーカードなら一枚だけでよい。また、戸籍や住民票のコピーを提出するときは今後、楽になるらしい。

Q1-6 マイナンバーが導入されると添付書類が不要になると言われていますが、住民票の写しや戸籍の添付が全て不要になるのですか?
A1-6 マイナンバーの導入により、平成29年7月から地方公共団体などで情報連携が始まり、社会保障や税、災害対策の手続で住民票の写しなどの添付が不要になります。
ただし、現時点でマイナンバーが使われるのは、法律や条例で定められる社会保障や税、災害対策の分野に限られるため、それ以外の分野の行政手続では、引き続き住民票の写しなどの添付が必要になります。
 また、戸籍は検討中であるものの、現時点ではマイナンバーの利用対象に入っていないため、番号の利用が始まった後も従来どおり提出していただく必要があります。(2016年2月回答)

マイナンバー社会保障・税番号制度

Q.

住基カードはどうなったのか?

 

A.

普及率5.6%の住基カードは死にました。マイナンバーカードを作る際に住基カードは返還する必要がある。(地方公共団体情報システム機構は記念品として持ち帰ることも可能と言っている)

ただし、全てが無駄だったわけではなく、住基カードに記録されている各個人の住基票コードは自治体の住基ネットで継続して使われる。

 

Q.

住基カードと住民票コードでマイナンバーカードと同じことができるのではないか?

 

A.

住基カードに住基票コードは記載されていないので、マイナンバーのように個人が自分でなんかの書類で番号を書くというのが難しい。(住民票コード付き住民票をもらえば知ることはできるが、行政以外が住民票コードを集めることは禁止されている。

 

Q.

住民票コードを記載した住基カードを配りなおせばよかったのでは?

 

A.

Q1-7 なぜ住民票コードをそのまま使わないのですか?
A1-7 「住民票コード」はもともと今回のような利用を想定しておらず、運用の大幅な改変が必要になることや、パブリックコメントの多数意見が「新しい番号の利用」だったこと、等が主な理由です。(2014年6月回答)

マイナンバー社会保障・税番号制度

 

またマイナンバー制度は住基ネットにはなかった複数の行政を結ぶ新しいシステムを導入している。

f:id:tanaka-kiiti:20170308212654j:plain

マイナンバー法案についての都道府県・指定都市担当課長説明会 資料7 住民基本台帳法・電子署名に係る地方公共団体の認証業務に関する法律の一部改正について」より(http://www.cas.go.jp/jp/seisaku/bangoseido/houansetumei/siryou7.pdf)

 

このシステムを導入することで、他の行政が持つ住民の情報を効率的かつ正確に取得することができる。

(同姓同名で生年月日が同じ人がたまにいて、行政ではたまにミスがある。

同姓同名、同一生年月日で別人の年金記録は存在するか? – 全国 消えた年金相談センター

 

あとは住基カードでやりたかった(できた)機能である

・保険証

・国家公務員身分証

・印鑑登録証

・図書館カード

・民間企業の社員証

お薬手帳

・診察券

なども空き容量部分に盛り込む方向性がある

そして最終的には

マイナンバーカードをスマホにダウンロードできる(またはSIMカードに搭載できる)

東京オリンピックの入場には事前に登録した生体情報を参照することでスマホすら持たずに入場する

・民間企業も公的個人認証サービスを利用可能になり、IDとパスワードを覚えずにマイナンバーカードをカードリーダーで読み込むだけになる

・各企業がキャッシュカードなどを発行する必要がなく、マイナンバーカードに機能を追加するだけ

・銀行口座をオンラインで即時開設

が可能になる。

詳細は以下で確認できる。

http://www.soumu.go.jp/main_content/000418560.pdf

 

Q.

重要なデータをひとつのとこで管理したら逆に危ないのでは

 

A.

総務省のサーバにマイナンバーを送ると生年月日から年収まで全部丸見え!というイメージは正しくない。ひとつのでかいサーバになんでもつまっていることはない。

f:id:tanaka-kiiti:20170308212654j:plain

の図にある通り

年金に関する情報は日本年金機構しか持たないし、税金に関する情報は国税庁しか持たない。

各組織が必要な時に必要な情報だけを提供する。

 参考:

マイナンバー、その「複雑さ」の真相 - 第1回 「個人番号」では串刺し検索ができない:ITpro

 

Q.マイナンバーで税金逃れや社会保障の不正受給がなくなるというが、現状でも不正防止が可能ではないか?

 

A.

 Q1-2 これまでマイナンバーがなくても生活に支障がなかったと思いますが、なぜ マイナンバー制度を導入するのですか。
A1-2 これまでも、例えば、福祉サービスや社会保険料の減免などの対象かどうかを 確認するため、国の行政機関や地方公共団体などの間で情報のやりとりがありました。
 しかし、それぞれの機関内では、住民票コード、基礎年金番号医療保険被保険者番号など、それぞれの番号で個人の情報を管理しているため、機関をまたいだ 情報のやりとりでは、氏名、住所などでの個人の特定に時間と労力を費やしていました。
 社会保障、税、災害対策の3分野について、分野横断的な共通の番号を導入することで、個人の特定を確実かつ迅速に行うことが可能になります。これにより、行政の効率化、国民の利便性向上、さらに公平・公正な税・社会保障制度を実現します。(2015年12月回答)

マイナンバー社会保障・税番号制度

 

感想

http://www.soumu.go.jp/main_content/000418560.pdf

 を読むと単なる行政の効率化というよりも、IDやパスワード、書類でカオスになってしまったものを一枚のカードに集約するということが最終的な目標であるという感想をもった。

費用対効果の検証はおこなっていない

A-4が潜水艦から離陸する画像について

先日、Twitterで「A-4が潜水艦の上で離陸準備をしているように見える画像」を見かけた。どうやって潜水艦から出したんだとかを考えているうちに、これがコラ画像かどうか気になってきたので調べた。

f:id:tanaka-kiiti:20170108051321p:plain

 

結論からいうとたぶんコラ画像だと思う

この画像は英語圏で

「Royal Australian Navy - Submarine Aircraft Carrier - 1970 The Royal Australian Navy Skyhawk, being an all-purpose aircraft, was the subject of a 1970s experimental sea trial of an A-4 on board a Royal Australian Navy submarine. There was no objection from the aviators to operating the Skyhawk from the somewhat limited deck space of the submarine. A problem with the Skyhawk's turbine cavitating while underway submerged was overcome. The diesel catapult worked just fine. However, the experiment was abandoned when the submarine's XO objected to the jet blast burning the paintwork off the sail.Royal Australian Navy - Submarine Aircraft Carrier - 1970」

というキャプションつきで出回っているもので初出は

Humor Page Two | A-4 Skyhawk Association

らしい。(画像はリンク切れで見れなくなっている)

そして、このキャプションの上にあるのが宇宙で活躍するA-4の画像。

ということで、多分ネタ画像なんだろうと思う。

 

以下、調べたことについて

写真に写っているもの

・A-4

機体ナンバーが888と読める。機体ナンバーが888のA-4は確かに1970年にオーストラリア海軍に実在した。大破してた。

A4 888 | Fleet Air Arm Association of Australia

・ヘリコプター

S-58っぽい。ウェセックス HAS.Mk31がオーストラリア海軍に配備されてた。機体に描かれた数字が33と読めるが数字の意味はわからなかった。

・潜水艦

潜水艦に詳しくないからわからない

 

写真に写っているものからは1970年代のオーストラリア海軍ということにわかった範囲で矛盾するものはなかった。

 

離陸できるのか

1970年代のオーストラリア海軍ならば潜水艦はオベロン級なのではないかと考えた。オベロン級の全長は90mで艦橋が真ん中にあるから滑走距離がだいたい45mぐらいになるから厳しいと思う。あとオベロン級は前のほうにソナーが突き出てるからぶち当たるのではと思った。あと耐熱処理とかを考えたら厳しそう

f:id:tanaka-kiiti:20170108053228p:plain

 追記:Twitterで「幅を考えるとA-4乗らないでしょ」という指摘があったのでオベロン級オヴェンスの写真を見ると

f:id:tanaka-kiiti:20170109043551p:plain

(http://www.shipspotting.com/gallery/photo.php?lid=1541480より)

たぶんA-4を乗せる幅ない

t.co

オリジナルの画像は見つけられなかったが、状況を考えるとほぼコラ画像と言えるとは思う。

響け!ユーフォニアムとコンクリートのくぼみ

間違っている部分などありましたらお知らせください。

 

響け!ユーフォニアム2 第7話「えきびるコンサート」を視聴していましたが気になることがありました。

コンサート直前、南広場で登場人物が会話しているシーンの背景に映るコンクリートの柱のくぼみの位置です。

blog.livedoor.jp

こちらのページの写真にあるようにアニメの柱のくぼみは実際よりも位置が隅によっています。

日常でくぼみの位置を意識されることはほとんどないと思いますが、この穴の位置はコンクリート壁の施工に大きく関わってきます。

 

そもそもなぜセメントの壁にくぼみがあるのか?

コンクリート製の壁を作ろうとしたとき、まずコンクリートと流し込むための型枠が必要になります。型枠として二枚の木の板を立て、その間にコンクリートを流し込めばいいわけですが、コンクリートが型枠を外側方向に押す力が発生します。その力を受け止めるために二枚の板の間に「セパレータ」という金属の棒を渡し、「Pコン」と「フォームタイ」という部品で型枠に固定します。コンクリートが固まったらPコンとフォームタイを取り除き、できた穴をモルタルで埋めます。

f:id:tanaka-kiiti:20170101055708p:plain

くぼみの位置について

コンクリートの圧力に耐えることを考えると、セパレータが隅にあると中央部分が膨張してしまうことになります。そのためにセパレータが隅に寄るということはないです。このページにあるように中央あたりにあることが多いです。

型枠割付の一般的な例とは | 建築の納まり図とその解説

 

とはいえ、響け!ユーフォニアムではコンクリートのひび割れがしっかりと書き込まれており素晴らしかったです。このひび割れを放置するとコンクリートの中性化へとつながり強度が失われてしまいます。

コンクリートの中性化|コンクリート豆知識|テクノクリート

 

意識されることが少ないコンクリートですが、知ると面白いことが多いです。

この機会にコンクリートについて詳しい方が増え、解説記事などを投稿していただけるとうれしいです。

 

参考:

「コンクリート型枠工事のやりかた」DIY建築革命団・カッパドキ〜ア

コンクリート施工について写真で紹介されています

【金物編】 ~消耗金物 セパレーター ~ | 福村建設株式会社

【金物編】 ~ホームタイ~ | 福村建設株式会社

部品についての詳細な解説

綾波の部屋は本当に打ち放しなのか?1|建築エコノミスト 森山のブログ

豊洲問題ではいろいろとありましたがアニメと建築をテーマにした本は面白かったです。