8/20-Rails調べ
■index
- コントローラーがモデルを取得する処理
- DBのパーティション
- Vue:mapGetter,mapActions,Vuexについて
- Vue:lang="pug" について
※内容は後でリライトします。
項目のみ整理しました。。。
■コントロール名からモデル名を取得する処理
コントローラ名からモデル名を取得します。class UsersController < ActionController::Base def index @model_name = controller_name.classify # モデル名の取得 @all = @model_name.constantize.find(:all) # モデルオブジェクトの取得 end end
- コントローラ名を classify するとモデル名が得られます。
- モデル名を constantize するとモデルオブジェクトが得られます。
■DBのパーティションについて
DBにinsertする際に、partitionの外に出る場合があるんですけど、そもそものpartitionの概念にお詳しい方などおりますか?
外に出るという表現がよくわからないのですが、MySQLの場合ですと以下のようにCREATE TABLEやALTER TABLEでパーティションを定義するかと思います。
この場合、createdにはレコードが追加されたYYYYMM(西暦の年と月)が入るとすると、2020年4月以降のデータはすべてpoverという名前のパーティションに入ることになります。
このような指定のことをおっしゃられている感じでしょうか?
なお、MySQLの実装としては、パーティションは単に記録するファイルを分割しているだけで、その指定を行うのが「PARTITION BY」になります。もろもろ詳細については手前味噌で恐縮ですが以下のページをご覧ください。
またパーティションについて言及されている書籍ですと「ハイパフォーマンスMySQL」あたりはオススメです。質問者さんが利用されているDBがMySQLであり、オライリーの書籍に抵抗が無ければご参考までに。
MapActions,Mapgetters Vuex
mapactions,mapgettters
->getとactionのシンプルな書き方だな
Vuex:状態管理のライブラリ
mapGettersとmapActions
これも公式サイトに書いてあるんだけど、mapGettersとmapActionsが分かっていなかった。
“store.getters.doneTodosCount"でデータを参照する事もできるが、mapGetters(ゲッター · GitBook)を使用すると、“this.doneCount"でアクセスできるようになる。
“this.$store.dispatch(‘increment’)“でStateのアクションを呼び出すのだが、mapActions(アクション · GitBook)を使用すると、“this.increment()“でアクションを呼び出すことができる。
Vueの規約
nuxt.jsでは、特殊な事情がない限り3つのディレクトリにコンポーネントファイルが格納されます。
後々喧嘩にならならないように。
layouts
pages
ディレクトリについては公式ドキュメントを参考にし、残りのcomponents
ディレクトリについてオリジナルの規約(整理方法)を定めてます。- /layouts
- /pages
- /components <- オリジナルの規約について
HTMLが簡単に書けるテンプレートエンジンであるPugをVue.jsで使ってみます。
-----
-----
SSOで情報をログイン情報を保持して、OEMってなんですか?
→製造と販社を分離。他社ブランドの製品を製造すること。
仲B,アレクソン,
- 顧客情報は顧客が書かない。OEM
- 代理店販売、
MANO.api
----
----