summaryrefslogtreecommitdiff
path: root/demos/quickstart/protected/pages/GettingStarted
diff options
context:
space:
mode:
Diffstat (limited to 'demos/quickstart/protected/pages/GettingStarted')
-rw-r--r--[-rwxr-xr-x]demos/quickstart/protected/pages/GettingStarted/CommandLine.page242
1 files changed, 136 insertions, 106 deletions
diff --git a/demos/quickstart/protected/pages/GettingStarted/CommandLine.page b/demos/quickstart/protected/pages/GettingStarted/CommandLine.page
index 5f5dacb9..31509338 100755..100644
--- a/demos/quickstart/protected/pages/GettingStarted/CommandLine.page
+++ b/demos/quickstart/protected/pages/GettingStarted/CommandLine.page
@@ -1,106 +1,136 @@
-<com:TContent ID="body" >
-<h1 id="501">Command Line Tool</h1>
-<p id="70046" class="block-content">The optional <tt>prado-cli.php</tt> PHP script file in the <tt>framework</tt>
-directory provides command line tools to perform various tedious takes in Prado.
-The <tt>prado-cli.php</tt> can be used to create Prado project skeletons, create
-initial test fixtures, and access to an interactive PHP shell.
-</p>
-<h2 id="502">Requirements</h2>
-<p id="70047" class="block-content">
-To use the command line tool, you need to use your command prompt, command console
-or terminal. In addition, PHP must be able to execute PHP scripts from
-the command line.
-</p>
-
-<h2 id="503">Usage</h2>
-<p id="70048" class="block-content">
-If you type <tt>php path/to/framework/prado-cli.php</tt>, you should see
-the following information. Alternatively, if you are not on Windows,
-you may try to change the <tt>prado-cli.php</tt> into an executable
-and execute it as a script</p>
-<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70006">
-Command line tools for Prado 3.0.5.
-usage: php prado-cli.php action <parameter> [optional]
-example: php prado-cli.php -c mysite
-
-actions:
- -c <directory>
- Creates a Prado project skeleton for the given <directory>.
-
- -t <directory>
- Create test fixtures in the given <directory>.
-
- shell [directory]
- Runs a PHP interactive interpreter. Initializes the Prado
- application in the given [directory].
-</com:TTextHighlighter>
-
-<p id="70049" class="block-content">The <b>&lt;parameter&gt;</b> are required parameters and <b>[optional]</b>
-are optional parameters. </p>
-
-<h2 id="504">Creating a new Prado project skeleton</h2>
-
-<p id="70050" class="block-content">To create a Prado project skeleton, do the following:</p>
-<ol>
- <li>Change to the directory where you want to create the project skeleton.</li>
- <li>Type, <tt>php ../prado/framework/prado-cli.php -c helloworld</tt>, where
- <tt>helloworld</tt> is the directory name that you want to create the project skeleton files.</li>
- <li>Type, <tt>php ../prado/framework/prado-cli.php <b>-t</b> helloworld</tt> to create
- the test fixtures for the <tt>helloworld</tt> project.</li>
-</ol>
-
-<h2 id="505">Interactive Shell</h2>
-<p id="70051" class="block-content">
-The interactive shell allows you to evaluate PHP statements from the command line.
-The <tt>prado-cli.php</tt> script can be used to start the shell and load an existing
-Prado project. For example, let us load the blog demo project. Assume that your
-command line is in the <tt>prado</tt> distribution directory and you type.
-</p>
-<p id="70052" class="block-content">
-<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70007">
-$: php framework/prado-cli.php shell demos/blog
-</com:TTextHighlighter>
-The output should be
-<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70008">
-Command line tools for Prado 3.0.5.
-** Loaded Prado application in directory "demos\blog\protected".
-PHP-Shell - Version 0.3.1
-(c) 2006, Jan Kneschke <jan@kneschke.de>
-
->> use '?' to open the inline help
-
->>
-</com:TTextHighlighter>
-Then we will get an instance of the Prado blog application, and from
-that instance we want an instance of the <tt>'data'</tt> module. Notice that
-a <b>semicolon</b> at the end of the line <b>suppresses the output</b>.
-
-<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70009">
->> $app = Prado::getApplication();
-
->> $db = $app->getModule('data');
-</com:TTextHighlighter>
-Lastly, we want to use the data module to query for a post with <tt>ID=1</tt>. Notice that
-we <b>leave out the semicolon</b> to show the results.
-<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70010">
->> $db->queryPostByID(1)
-</com:TTextHighlighter>
-There should not be any errors and you should see the following.
-<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70011">
-PostRecord#1
-(
- [ID] => 1
- [AuthorID] => 1
- [AuthorName] => 'Prado User'
- [CreateTime] => 1148819691
- [ModifyTime] => 0
- [Title] => 'Welcome to Prado Weblog'
- [Content] => 'Congratulations! You have successfully installed Prado Blog --
- a PRADO-driven weblog system. A default administrator account has been created.
- Please login with <b>admin/prado</b> and update your password as soon as possible.'
- [Status] => 0
- [CommentCount] => 0
-)
-</com:TTextHighlighter>
-</p>
-</com:TContent>
+<com:TContent ID="body" >
+<h1 id="501">Command Line Tool</h1>
+<p id="70046" class="block-content">The optional <tt>prado-cli.php</tt> PHP script file in the <tt>framework</tt>
+directory provides command line tools to perform various tedious takes in Prado.
+The <tt>prado-cli.php</tt> can be used to create Prado project skeletons, create
+initial test fixtures, and access to an interactive PHP shell.
+</p>
+<h2 id="502">Requirements</h2>
+<p id="70047" class="block-content">
+To use the command line tool, you need to use your command prompt, command console
+or terminal. In addition, PHP must be able to execute PHP scripts from
+the command line.
+</p>
+
+<h2 id="503">Usage</h2>
+<p id="70048" class="block-content">
+If you type <tt>php path/to/framework/prado-cli.php</tt>, you should see
+the following information. Alternatively, if you are not on Windows,
+you may try to change the <tt>prado-cli.php</tt> into an executable
+and execute it as a script</p>
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70006">
+Command line tools for Prado 3.0.5.
+usage: php prado-cli.php action <parameter> [optional]
+example: php prado-cli.php -c mysite
+
+actions:
+ -c <directory>
+ Creates a Prado project skeleton for the given <directory>.
+
+ -t <directory>
+ Create test fixtures in the given <directory>.
+
+ shell [directory]
+ Runs a PHP interactive interpreter. Initializes the Prado
+ application in the given [directory].
+</com:TTextHighlighter>
+
+<p id="70049" class="block-content">The <b>&lt;parameter&gt;</b> are required parameters and <b>[optional]</b>
+are optional parameters. </p>
+
+<h2 id="504">Creating a new Prado project skeleton</h2>
+
+<p id="70050" class="block-content">To create a Prado project skeleton, do the following:</p>
+<ol>
+ <li>Change to the directory where you want to create the project skeleton.</li>
+ <li>Type, <tt>php ../prado/framework/prado-cli.php -c helloworld</tt>, where
+ <tt>helloworld</tt> is the directory name that you want to create the project skeleton files.</li>
+ <li>Type, <tt>php ../prado/framework/prado-cli.php <b>-t</b> helloworld</tt> to create
+ the test fixtures for the <tt>helloworld</tt> project.</li>
+</ol>
+
+<h2 id="505">Interactive Shell</h2>
+<p id="70051" class="block-content">
+The interactive shell allows you to evaluate PHP statements from the command line.
+The <tt>prado-cli.php</tt> script can be used to start the shell and load an existing
+Prado project. For example, let us load the blog demo project. Assume that your
+command line is in the <tt>prado</tt> distribution directory and you type.
+</p>
+<p id="70052" class="block-content">
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70007">
+$: php framework/prado-cli.php shell demos/blog
+</com:TTextHighlighter>
+The output should be
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70008">
+Command line tools for Prado 3.0.5.
+** Loaded Prado application in directory "demos\blog\protected".
+PHP-Shell - Version 0.3.1
+(c) 2006, Jan Kneschke <jan@kneschke.de>
+
+>> use '?' to open the inline help
+
+>>
+</com:TTextHighlighter>
+Then we will get an instance of the Prado blog application, and from
+that instance we want an instance of the <tt>'data'</tt> module. Notice that
+a <b>semicolon</b> at the end of the line <b>suppresses the output</b>.
+
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70009">
+>> $app = Prado::getApplication();
+
+>> $db = $app->getModule('data');
+</com:TTextHighlighter>
+Lastly, we want to use the data module to query for a post with <tt>ID=1</tt>. Notice that
+we <b>leave out the semicolon</b> to show the results.
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70010">
+>> $db->queryPostByID(1)
+</com:TTextHighlighter>
+There should not be any errors and you should see the following.
+<com:TTextHighlighter Language="cli" CssClass="source block-content cli" id="code_70011">
+PostRecord#1
+(
+ [ID] => 1
+ [AuthorID] => 1
+ [AuthorName] => 'Prado User'
+ [CreateTime] => 1148819691
+ [ModifyTime] => 0
+ [Title] => 'Welcome to Prado Weblog'
+ [Content] => 'Congratulations! You have successfully installed Prado Blog --
+ a PRADO-driven weblog system. A default administrator account has been created.
+ Please login with <b>admin/prado</b> and update your password as soon as possible.'
+ [Status] => 0
+ [CommentCount] => 0
+)
+</com:TTextHighlighter>
+</p>
+
+<h2>Creating Active Record Classes</h2>
+<p>
+In the blog demo project, we need to create two <a href="?page=Database.ActiveRecord">Active Record</a> classes, <tt>UserRecord</tt> and <tt>PostRecord</tt>, to represent data records in the <tt>users</tt> and <tt>posts</tt> tables, respectively. Active Record classes must extend from the base class <tt>ActiveRecord</tt>, and must define property names that matches with the field names of the corresponding table.
+</p>
+
+<p>
+To better organize our directories, we create a new directory <tt>protected/database</tt> to hold the class files. We also modify our application configuration by inserting the following lines. It is equivalent to adding the directory <tt>protected/database</tt> to PHP include_path, which allows us to use the classes without explicitly including them.
+</p>
+
+<com:TTextHighlighter CssClass="source" Language="xml">
+<paths>
+ <using namespace="Application.database.*" />
+</paths>
+</com:TTextHighlighter>
+
+<p>
+At the prompt, enter the following two commands to create <tt>UserRecord</tt> and <tt>PostRecord</tt> classes:
+</p>
+
+<com:TTextHighlighter CssClass="source cli" Language="text">
+>> generate users Application.database.UserRecord
+
+>> generate posts Application.database.PostRecord
+</com:TTextHighlighter>
+
+<p>
+Here we used the <a href="?page=Fundamentals.Components">namespace format</a> again to specify the classes to be created. The path <tt>Application.database.UserRecord</tt> indicates that we want the <tt>UserRecord</tt> class file to be <tt>protected/database/UserRecord.php</tt>.
+</p>
+
+</com:TContent>