summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/overview/mvc.rst
diff options
context:
space:
mode:
authordchill42 <dchill42@gmail.com>2012-07-23 16:53:47 +0200
committerdchill42 <dchill42@gmail.com>2012-07-23 16:53:47 +0200
commitc5079de78e5141330c07e990811ef15e998e95aa (patch)
tree0f39d8c4fc7614246fc185810bfeaa7fad88a33a /user_guide_src/source/overview/mvc.rst
parent00fcb545109d4e61bc14e403ec828749c34a54b3 (diff)
parentede49ba66b127535f3430e20aac72ceed2c4611a (diff)
Merge branch develop of github.com:/EllisLab/CodeIgniter into session
Diffstat (limited to 'user_guide_src/source/overview/mvc.rst')
-rw-r--r--user_guide_src/source/overview/mvc.rst27
1 files changed, 27 insertions, 0 deletions
diff --git a/user_guide_src/source/overview/mvc.rst b/user_guide_src/source/overview/mvc.rst
new file mode 100644
index 000000000..996745d65
--- /dev/null
+++ b/user_guide_src/source/overview/mvc.rst
@@ -0,0 +1,27 @@
+#####################
+Model-View-Controller
+#####################
+
+CodeIgniter is based on the Model-View-Controller development pattern.
+MVC is a software approach that separates application logic from
+presentation. In practice, it permits your web pages to contain minimal
+scripting since the presentation is separate from the PHP scripting.
+
+- The **Model** represents your data structures. Typically your model
+ classes will contain functions that help you retrieve, insert, and
+ update information in your database.
+- The **View** is the information that is being presented to a user. A
+ View will normally be a web page, but in CodeIgniter, a view can also
+ be a page fragment like a header or footer. It can also be an RSS
+ page, or any other type of "page".
+- The **Controller** serves as an *intermediary* between the Model, the
+ View, and any other resources needed to process the HTTP request and
+ generate a web page.
+
+CodeIgniter has a fairly loose approach to MVC since Models are not
+required. If you don't need the added separation, or find that
+maintaining models requires more complexity than you want, you can
+ignore them and build your application minimally using Controllers and
+Views. CodeIgniter also enables you to incorporate your own existing
+scripts, or even develop core libraries for the system, enabling you to
+work in a way that makes the most sense to you.