まじめにCMSを考える
CMSと言う以上、複数機能の組み合わせで成り立つべきであり、各機能は可能な限り分離されるべき!
こう考えたのがついさっき、お腹を壊して入っていたトイレの中。
もう少し詳しくメモしておくと、こんな感じ。
・一番上位の概念として、管理者を設定(あるいは、ユーザの権限にスーパーユーザ権限を設定)。
・CMS全体で利用可能なユーザを定義、各種機能の使用可否をフラグで判定。acts_as_bitfieldが便利そう。
追記:acts_as_bitsというのもあるらしい。後で機能比較。
後、AR.value_to_booleanというメソッドがあるらしい。
参考サイト
つまり、"true"か"t"か"1"(to_sなので全部String)のみtrueで後はfalse。
乱暴なようですが、nilへの対策などを考えるとありかな、と。
RailsのAPIリファレンスが欲しいです。
できれば、逆引きできちゃうやつが。
5k円までなら安い、10kでも考えます。
・CMSの機能をRailsのコントローラで分けて定義。
・コントローラ名とユーザアカウントから、自動的に権限の可否を判断。
すごくRails寄りな発想ですが、要はユーザのロール管理って事です。
フラグひとつで管理できる程度に収めるつもりですが、場合によってはそこももっと複雑化するかもしれない…
まあ、これ以上は作りながら考えた方が早そうです。
リポジトリも切ったので、後はいよいよ作るだけ。
毎週の土日を使って頑張ります。
追記の追記
Railsのえろいひとのサイトで見かけた記事。
acts_as_attachment-1.1.6 認証系の個人的デファクト
acts_as_bits フラグ管理で必須
acts_as_nervous A型用
acts_as_view with_scope 代わりに
ar_fixtures テストデータ作成にもデータ退避リストアにも使える
dsl_accessor やっぱり使う
expectation 俺俺DRYに
htpasswd 5秒でDigest認証を追加するのに便利
migration2 開発時のテーブル定義に
perform_filters actionのDRYに必須
redbox Modal Window ぽく
responds_to_parent 画面繊維なしの upload
scoped_access has_many 時代の縛りとして
いくつかは知っているけれど、知らないものも多いわけで。
自分が使っているツールの使い方は、もっと研究するべきだなぁ、と。
ここに書いてある分だけでも、確認してみます。
メモ・買い物リスト
・服
・靴
・ラップ
・れんげ
・入力端子
・マウス or トラックボール
ゴミ箱って必要なんですかね?
長門さんの中の人も購入したらしいし、私も買おうかしら。
こう考えたのがついさっき、お腹を壊して入っていたトイレの中。
もう少し詳しくメモしておくと、こんな感じ。
・一番上位の概念として、管理者を設定(あるいは、ユーザの権限にスーパーユーザ権限を設定)。
・CMS全体で利用可能なユーザを定義、各種機能の使用可否をフラグで判定。acts_as_bitfieldが便利そう。
追記:acts_as_bitsというのもあるらしい。後で機能比較。
後、AR.value_to_booleanというメソッドがあるらしい。
参考サイト
つまり、"true"か"t"か"1"(to_sなので全部String)のみtrueで後はfalse。
乱暴なようですが、nilへの対策などを考えるとありかな、と。
RailsのAPIリファレンスが欲しいです。
できれば、逆引きできちゃうやつが。
5k円までなら安い、10kでも考えます。
・CMSの機能をRailsのコントローラで分けて定義。
・コントローラ名とユーザアカウントから、自動的に権限の可否を判断。
すごくRails寄りな発想ですが、要はユーザのロール管理って事です。
フラグひとつで管理できる程度に収めるつもりですが、場合によってはそこももっと複雑化するかもしれない…
まあ、これ以上は作りながら考えた方が早そうです。
リポジトリも切ったので、後はいよいよ作るだけ。
毎週の土日を使って頑張ります。
追記の追記
Railsのえろいひとのサイトで見かけた記事。
acts_as_attachment-1.1.6 認証系の個人的デファクト
acts_as_bits フラグ管理で必須
acts_as_nervous A型用
acts_as_view with_scope 代わりに
ar_fixtures テストデータ作成にもデータ退避リストアにも使える
dsl_accessor やっぱり使う
expectation 俺俺DRYに
htpasswd 5秒でDigest認証を追加するのに便利
migration2 開発時のテーブル定義に
perform_filters actionのDRYに必須
redbox Modal Window ぽく
responds_to_parent 画面繊維なしの upload
scoped_access has_many 時代の縛りとして
いくつかは知っているけれど、知らないものも多いわけで。
自分が使っているツールの使い方は、もっと研究するべきだなぁ、と。
ここに書いてある分だけでも、確認してみます。
メモ・買い物リスト
・服
・靴
・ラップ
・れんげ
・入力端子
・マウス or トラックボール
ゴミ箱って必要なんですかね?
長門さんの中の人も購入したらしいし、私も買おうかしら。