Using the Framework: Basics: Unterschied zwischen den Versionen

Aus CodeCoupler Wiki
Zur Navigation springen Zur Suche springen
Tm (Diskussion | Beiträge)
Tm (Diskussion | Beiträge)
Zeile 3: Zeile 3:
== MVC Approach ==
== MVC Approach ==


First of all you have to learn how to create a simple webpage. For this you must read and understand the underlying framework CodeIgniter. CodeIgniter is a web application framework using the Model-View-Controller approach, which allows separation between logic and presentation. Read the very clear and thorough documentation here: http://codeigniter.com/user_guide/index.html
First of all you should learn how to create a simple webpage. For this you must understand the underlying framework CodeIgniter. CodeIgniter is a web application framework using the Model-View-Controller approach, which allows separation between logic and presentation. For further assistance read the very clear and thorough documentation here: http://codeigniter.com/user_guide/index.html


Here a little "Hello World" example:
Here a little "Hello World" example:

Version vom 11. November 2013, 15:29 Uhr

Hint
Hint

Do you know CodeIgniter?
CodeCoupler use CodeIgniter as base. All those people who knows CodeIgniter should read this page carefully. It explains the most important differences.


MVC Approach

First of all you should learn how to create a simple webpage. For this you must understand the underlying framework CodeIgniter. CodeIgniter is a web application framework using the Model-View-Controller approach, which allows separation between logic and presentation. For further assistance read the very clear and thorough documentation here: http://codeigniter.com/user_guide/index.html

Here a little "Hello World" example:

To "write" a page you need at least a controller and a view. Create at first a file named test.php in the folder application/controllers/ with the following code:

<?php
class Test extends CI_Controller {
	public function index()
	{
		$this->load->view('test');
	}
}

Then create a file named test.php in the folder application/views/ with the following code:

<h1>Hello World!</h1>

Now open the url "http://<yourdomain>/test". You will see your first webpage created with this framework. If you look into the sourcecode of the show webpage, you will see one of the relevant differendes between CodeCoupler and CodeIgniter: You do not have to write a complete html-structure, CodeCoupler will do it for you.

Master Template

In contrast to the basic CodeIgniter framework, every output of a controller will be surrounded by a master-template. The basic layout of the master template looks like this:

<!DOCTYPE ... />
<html ... >
	<head>
		<charset ... />
		<title> ... </title>
	</head>
	<body>
		[YOUR CONTROLLER OUTPUT]
	</body>
</html>

Read the full documentation of the master-template library here: Libraries: Master

Extended Form Handling

The whole usage of form-elements is packaged in a new form-class which encloses the existing form-validation-class and form-helper of CodeIgniter. The goal was to avoid some always recurring coding. To insert a text-field, for example, it is not enough to write “form_input($data)”. You have to remember the validation of the field, set the value to the previous posted, set the correct class if an error occurred and so on. A radio-button group or a group of checkboxes you have to think much more about the whole roundtrip and validation. Or what in case if you want to add more than one form onto one page? Using the form-class you will not need doing all this.

Here is a simple example of a view including a form. You do not have to do anything more in the controller than loading this view. A validation of the form will be done for you automatically based on configuration file for this form:

<?=form_start('example_form')?>
	<?=form_label('name')?>:<br /><?=form_field('name')?> <br /><br />
	<?=form_label('amount')?>:<br /><?=form_field('amount')?> <br /><br />
	<br />
	<?=form_submit()?>
<?=form_end()?>
<br />
<?=form_errors()?>
<?=form_confirmation()?>

Read the full documentation of the form-handling library here: Libraries: Form

Multilanguage Routing

- tbd -

Default Enabled Components

- tbd -