三浦@オープンストリートマップです。
pinaxプロジェクトのsymposion(*1)をベースにカンファレンスの web site(*2)を作っています。 さて、pinaxプロジェクトに各種修正や機能追加の提案をして(*3)いますが、 pinaxプロジェクトのマージが待ちきれないので、当該プロジェクトでは pinaxプロジェクトからsymposionをフォークして(*4)います。 さて、symposionでは、カンファレンスのCFPに対する レビューを支援する仕組みがあります。 今回のカンファレンスでは、オーバースペックなので、 INSTALLED_APPに入れないことで、その機能を殺しています。 同様に、「セッション」の仕組みがあります。 学会のセッション司会や、時間進行ボランティアのアサインを 支援する仕組みです。 今回のカンファレンスでは、シングルトラックなので、 この機能を使わないようにしたいと思っています。 Forkしたソースを使っているので、ソースを変更して この機能を使わないようにしています。 しかしフォークしていじるのではなくて、 サイトのほうで対処したほうがいいと考えています。 というのは、メンテナンス性が落ちるためです。 というわけで質問です。 フレームワークのモデルの一部をスマートに隠蔽する方法は ありますか? モデルを拡張する場合は、継承して、フィールドを追加すれば いいわけですが、隠すほうをどうするかです。 テンプレートでは、そのフィールドを表示しないことで対処できます。 adminの方では、どうでしょうか。 管理画面で、使用しないモデルは表示させたくありません。 カンファレンスの運営スタッフが、必ずしもソフトウエアエンジニアでは 無いですから、混乱させるようなメニューは出したくありません。 具体的には、 https://github.com/pinax/symposion/blob/master/symposion/schedule/models.py のスケジュール管理機能は使いますが、 https://github.com/pinax/symposion/blob/master/symposion/schedule/models.py#L187 class Session(models.Model) や https://github.com/pinax/symposion/blob/master/symposion/schedule/models.py#L221 class SessionRole(models.Model) は使いません。 部分的に使わないので、INSTALLED_APPから削除できないため、 どうすればいいか、わかりませんでした。 https://github.com/pinax/symposion/blob/master/symposion/schedule/admin.py#L43 には、 admin.site.register(Session)等とあるために、管理画面に出てきます。 よろしくお願いします。 (*1) https://github.com/pinax/symposion (*2) https://github.com/osmfj/sotmjp-website (*3)https://github.com/pinax/symposion/pulls (*4) https://github.com/miurahr/symposion -- -- ----------------- http://djangoproject.jp/ ----------------- You received this message because you are subscribed to the Google Groups "django-ja" group. To post to this group, send email to django-ja@googlegroups.com To unsubscribe from this group, send email to django-ja-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-ja --- このメールは Google グループのグループ「django-ja」の登録者に送られています。 このグループから退会し、グループからのメールの配信を停止するには django-ja+unsubscr...@googlegroups.com にメールを送信してください。 その他のオプションについては、https://groups.google.com/d/optout にアクセスしてください。