Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clam の定義(APIの定義) #9

Open
okada-takuya opened this issue Jul 9, 2015 · 4 comments
Open

clam の定義(APIの定義) #9

okada-takuya opened this issue Jul 9, 2015 · 4 comments

Comments

@okada-takuya
Copy link
Member

#8 の Task issue である.

clam (様々なリソースの受け皿)を定義して,perican から リソースを取り込むAPIを作る.

@kobayashi1027
Copy link
Member

dsc_0158
先生とclamの構成を議論した際の図です.

@okada-takuya
Copy link
Member Author

  • clam は perican の Metadata と同じデータと, content_type をカラムにもち,Resource モデルを has_one する.
  • Resource を継承してEventやMailを作る.
  • このへんの実装は LastNote の Document や LargeObject が参考になる.

@okada-takuya
Copy link
Member Author

Clam と Resource の Scaffold までを実施.
おそらくもくもく会時の Clam や EventClam があったが現在の思想に反するため,削除し,
Clam のみ scaffold しなおした.
https://github.com/nomlab/camome/compare/master...okada-takuya:clam?expand=1

@okada-takuya
Copy link
Member Author

Single Table Inheritance を使うために, Resource のサブクラスを実装中.(手元のみ)
現在,Resource のサブクラスは全てファイルを分けて作っているが,
これはおなじファイル (app/models/resource.rb) に書くと bundle exec rails c したときに
サブクラスが読み込まれないためである.

Perican にもある Mail を定義したところで Rails 既存の mailer と衝突しているみたい.
LastNote は L(astNote)Mail にすることで競合を回避している?
この方法だと camome と perican の間で Class 名がずれてしまい,Class名 perican からそのまま渡してる現状では困る.
e.g. camome :: CMail perican :: PMail

@ikeda-yuko ikeda-yuko removed the Task label Mar 17, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants