From 9c63d0bb34be4007178d5a7e46348d5e23fee3ff Mon Sep 17 00:00:00 2001 From: Phil Sturgeon Date: Thu, 27 Oct 2011 01:55:44 +0100 Subject: Bumped CodeIgniter version to 2.1.0. --- user_guide/libraries/benchmark.html | 2 +- user_guide/libraries/caching.html | 2 +- user_guide/libraries/calendar.html | 2 +- user_guide/libraries/cart.html | 2 +- user_guide/libraries/config.html | 2 +- user_guide/libraries/email.html | 2 +- user_guide/libraries/encryption.html | 2 +- user_guide/libraries/file_uploading.html | 2 +- user_guide/libraries/form_validation.html | 2 +- user_guide/libraries/ftp.html | 2 +- user_guide/libraries/image_lib.html | 2 +- user_guide/libraries/input.html | 2 +- user_guide/libraries/javascript.html | 2 +- user_guide/libraries/language.html | 2 +- user_guide/libraries/loader.html | 2 +- user_guide/libraries/migration.html | 176 ++++++++++++++++++++++++++++++ user_guide/libraries/output.html | 2 +- user_guide/libraries/pagination.html | 2 +- user_guide/libraries/parser.html | 2 +- user_guide/libraries/security.html | 2 +- user_guide/libraries/sessions.html | 2 +- user_guide/libraries/table.html | 2 +- user_guide/libraries/trackback.html | 2 +- user_guide/libraries/typography.html | 2 +- user_guide/libraries/unit_testing.html | 2 +- user_guide/libraries/uri.html | 2 +- user_guide/libraries/user_agent.html | 2 +- user_guide/libraries/xmlrpc.html | 2 +- user_guide/libraries/zip.html | 2 +- 29 files changed, 204 insertions(+), 28 deletions(-) create mode 100644 user_guide/libraries/migration.html (limited to 'user_guide/libraries') diff --git a/user_guide/libraries/benchmark.html b/user_guide/libraries/benchmark.html index c7b7ec9a7..602e6fac0 100644 --- a/user_guide/libraries/benchmark.html +++ b/user_guide/libraries/benchmark.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/caching.html b/user_guide/libraries/caching.html index 9b503f6d1..9808aaa51 100644 --- a/user_guide/libraries/caching.html +++ b/user_guide/libraries/caching.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/calendar.html b/user_guide/libraries/calendar.html index 724c08f8b..2abc43975 100644 --- a/user_guide/libraries/calendar.html +++ b/user_guide/libraries/calendar.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/cart.html b/user_guide/libraries/cart.html index f1e8473e7..b867b709c 100644 --- a/user_guide/libraries/cart.html +++ b/user_guide/libraries/cart.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/config.html b/user_guide/libraries/config.html index d522bbc5b..08b612e77 100644 --- a/user_guide/libraries/config.html +++ b/user_guide/libraries/config.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/email.html b/user_guide/libraries/email.html index d246254ab..7fc56d55b 100644 --- a/user_guide/libraries/email.html +++ b/user_guide/libraries/email.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/encryption.html b/user_guide/libraries/encryption.html index 5c64127cb..6ec629f96 100644 --- a/user_guide/libraries/encryption.html +++ b/user_guide/libraries/encryption.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/file_uploading.html b/user_guide/libraries/file_uploading.html index a88c67220..2cb1ef5ea 100644 --- a/user_guide/libraries/file_uploading.html +++ b/user_guide/libraries/file_uploading.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/form_validation.html b/user_guide/libraries/form_validation.html index d9d8a4502..2028bcd2c 100644 --- a/user_guide/libraries/form_validation.html +++ b/user_guide/libraries/form_validation.html @@ -27,7 +27,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/ftp.html b/user_guide/libraries/ftp.html index 6c7ed5c65..3dbb0530e 100644 --- a/user_guide/libraries/ftp.html +++ b/user_guide/libraries/ftp.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/image_lib.html b/user_guide/libraries/image_lib.html index 475f02a56..1caf791d8 100644 --- a/user_guide/libraries/image_lib.html +++ b/user_guide/libraries/image_lib.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/input.html b/user_guide/libraries/input.html index 311f76ee9..cfb0d5e1e 100644 --- a/user_guide/libraries/input.html +++ b/user_guide/libraries/input.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/javascript.html b/user_guide/libraries/javascript.html index 09530e246..3dda1fd69 100644 --- a/user_guide/libraries/javascript.html +++ b/user_guide/libraries/javascript.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/language.html b/user_guide/libraries/language.html index 1f670ea4b..a9afcef90 100644 --- a/user_guide/libraries/language.html +++ b/user_guide/libraries/language.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/loader.html b/user_guide/libraries/loader.html index af27176ad..53440c53c 100644 --- a/user_guide/libraries/loader.html +++ b/user_guide/libraries/loader.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/migration.html b/user_guide/libraries/migration.html new file mode 100644 index 000000000..ed99044d1 --- /dev/null +++ b/user_guide/libraries/migration.html @@ -0,0 +1,176 @@ + + + + + +Migration Class : CodeIgniter User Guide + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +

CodeIgniter User Guide Version 2.1.0

+
+ + + + + + + + + +
+ + +
+ + + +
+ + +

Migration Class

+ +

Migrations are a convenient way for you to alter your database in a structured and organized manner. You could edit fragments of SQL by hand but you would then be responsible for telling other developers that they need to go and run them. You’d also have to keep track of which changes need to be run against the production machines next time you deploy.

+ +

The database table migration tracks which migrations have already been run so all you have to do is update your application files and call $this->migrate->current() to work out which migrations should be run. The current version is found in config/migration.php.

+ +

Create a Migration

+ +

This will be the first migration for a new site which has a blog. All migrations go in the folder application/migrations/ and have names such as: 001_add_blog.php.

+ +
+defined('BASEPATH') OR exit('No direct script access allowed');
+
+class Migration_Add_blog extends CI_Migration {
+
+	public function up()
+	{
+		$this->dbforge->add_field(array(
+			'blog_id' => array(
+				'type' => 'INT',
+				'constraint' => 5,
+				'unsigned' => TRUE,
+				'auto_increment' => TRUE
+			),
+			'blog_title' => array(
+				'type' => 'VARCHAR',
+				'constraint' => '100',
+			),
+			'blog_description' => array(
+				'type' => 'TEXT',
+				'null' => TRUE,
+			),
+		));
+		
+		$this->dbforge->create_table('blog');
+	}
+
+	public function down()
+	{
+		$this->dbforge->drop_table('blog');
+	}
+
+ +

Then in application/config/migration.php set $config['migration_version'] = 1;. + +

Usage Example

+ +

In this example some simple code is placed in application/controllers/migrate.php to update the schema.

+ +
+$this->load->library('migration');
+
+if ( ! $this->migration->current())
+{
+	show_error($this->migration->error_string());
+}
+
+ + +

Function Reference

+ +

$this->migration->current()

+ +

The current migration is whatever is set for $config['migration_version'] in application/config/migration.php.

+ + +

$this->migration->latest()

+ +

This works much the same way as current() but instead of looking for the $config['migration_version'] the Migration class will use the very newest migration found in the filesystem.

+ +

$this->migration->version()

+ +

Version can be used to roll back changes or step forwards programmatically to specific versions. It works just like current but ignores $config['migration_version'].

+ +
+$this->load->library('migration');
+
+$this->migration->version(5);
+
+ +

Migration Preferences

+ +

The following is a list of all the config options for migrations.

+ + + + + + + + + + + + + + + +
PreferenceDefault ValueOptionsDescription
migration_enabledFALSETRUE / FALSEEnable or disable migrations.
migration_version0NoneThe current version your database should use.
migration_pathAPPPATH.'migrations/'NoneThe path to your migrations folder.
+ + +
+ + + + + + + \ No newline at end of file diff --git a/user_guide/libraries/output.html b/user_guide/libraries/output.html index 7361d7961..77fe464ce 100644 --- a/user_guide/libraries/output.html +++ b/user_guide/libraries/output.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/pagination.html b/user_guide/libraries/pagination.html index 196555441..b5f971f5a 100644 --- a/user_guide/libraries/pagination.html +++ b/user_guide/libraries/pagination.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/parser.html b/user_guide/libraries/parser.html index b8a53452e..f449145ac 100644 --- a/user_guide/libraries/parser.html +++ b/user_guide/libraries/parser.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/security.html b/user_guide/libraries/security.html index dd62a4386..ad1d9ae86 100644 --- a/user_guide/libraries/security.html +++ b/user_guide/libraries/security.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/sessions.html b/user_guide/libraries/sessions.html index e09c31db3..dfb732491 100644 --- a/user_guide/libraries/sessions.html +++ b/user_guide/libraries/sessions.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/table.html b/user_guide/libraries/table.html index 1f34dd9e2..003916ef3 100644 --- a/user_guide/libraries/table.html +++ b/user_guide/libraries/table.html @@ -27,7 +27,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/trackback.html b/user_guide/libraries/trackback.html index a2912a594..035158463 100644 --- a/user_guide/libraries/trackback.html +++ b/user_guide/libraries/trackback.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/typography.html b/user_guide/libraries/typography.html index cd287933c..12be119cc 100644 --- a/user_guide/libraries/typography.html +++ b/user_guide/libraries/typography.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/unit_testing.html b/user_guide/libraries/unit_testing.html index 5ebec0cbf..7d27ff1dd 100644 --- a/user_guide/libraries/unit_testing.html +++ b/user_guide/libraries/unit_testing.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/uri.html b/user_guide/libraries/uri.html index 0e1c26f1e..f04bb9f10 100644 --- a/user_guide/libraries/uri.html +++ b/user_guide/libraries/uri.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/user_agent.html b/user_guide/libraries/user_agent.html index e1d3640d3..8b3dcee62 100644 --- a/user_guide/libraries/user_agent.html +++ b/user_guide/libraries/user_agent.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/xmlrpc.html b/user_guide/libraries/xmlrpc.html index 3635c221b..bb939dff4 100644 --- a/user_guide/libraries/xmlrpc.html +++ b/user_guide/libraries/xmlrpc.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

diff --git a/user_guide/libraries/zip.html b/user_guide/libraries/zip.html index 21cf8017a..53fc71ef3 100644 --- a/user_guide/libraries/zip.html +++ b/user_guide/libraries/zip.html @@ -28,7 +28,7 @@
- +

CodeIgniter User Guide Version 2.0.3

CodeIgniter User Guide Version 2.1.0

-- cgit v1.2.3-24-g4f1b