0

私は現在、codeIgniter でプロジェクト用の CMS を構築しています。ユーザーがデータベースに新しいページを作成するときに、CMS を介して codeIgniter でコントローラー ファイルを動的に作成する方法があるかどうか疑問に思っていました。データベース内のテーブルとビューは同じであるため、別のモデルを作成する必要はありません。基本的に、Web サイトのすべてのページ (リンク、タイトル、コンテンツなど) は同じテーブルからのものです。このようなURIを維持したいだけです(www.mywebsite.com/class/function)。また、ルーティングもありません。

私はウェブを見回していましたが、リクエストの近くで見つけた唯一のものはCRUD「codegen」ですが、オンラインでは使用できず、必要のないものがたくさんあります。

4

1 に答える 1

2

ユーザーが新しいページをデータベースに追加するたびに新しいコントローラーを作成することは可能ですが、データベース ID またはページ名をパラメーターとして取り、そのページをロードする単一のコントローラーを用意する方がよいのではないでしょうか?

したがって、ユーザーが page1 と page2 という 2 つのページを作成し、dynamic.php という名前のすべての動的ページを提供するために使用されるコントローラーがある場合、URL は次のようになります。

www.mysite.com/dynamic/page1
www.mysite.com/dynamic/page2

ユーザーがページを作成するたびにコントローラーを作成するのは大きなオーバーヘッドであり、たとえば、ユーザーがデータベースからページを削除するときにコントローラーを削除するなど、適切に実装するには多くのコードが必要になります。また、SO 内でコーディング ソリューションを提供するのは面倒だと思います。

于 2012-08-02T20:22:50.723 に答える