Development

/doc/tags/RELEASE_1_0_5/refcard/refcard.html

You must first sign up to be able to contribute.

root/doc/tags/RELEASE_1_0_5/refcard/refcard.html

Revision 1271, 16.5 kB (checked in by francois, 3 years ago)

Added admin generator cheat sheet, and started the update of the symfony ref card

  • Property svn:mime-type set to text/html
  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
Line 
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2000/REC-xhtml1-200000126/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3 <head>
4 <meta http-equiv="content-type" content="text/html; charset=utf-8" />
5 <title>symfony reference card</title>
6 <link rel="stylesheet" type="text/css" href="refcard.css" />
7 </head>
8 <body>
9
10 <h1>&raquo;&nbsp;symfony reference card 1.0&nbsp;&laquo;</h1>
11
12 <!-- column start -->
13 <div class="col">
14
15 <div class="subcol">
16 <h2>sfAction &lt; Action</h2>
17 <div class="content">
18
19 <h3>Returns</h3>
20 -&gt;<span class="method">forward</span>($module, $action),
21 -&gt;<span class="method">render_text</span>($text),
22 <span class="method">sfView::SUCCESS</span>
23
24 <h3>Shortcuts</h3>
25 -&gt;<span class="method">getController</span>(),
26 -&gt;<span class="method">getUser</span>(),
27 -&gt;<span class="method">getRequest</span>(),
28 -&gt;<span class="method">getRequestParameter</span>($name)()
29
30 <h3>Template variables</h3>
31 -&gt;<span class="method">setVar</span>(),
32 -&gt;<span class="method">setVars</span>(),
33 -&gt;<span class="method">removeVar</span>(),
34 -&gt;<span class="method">hasVar</span>(),
35 -&gt;<span class="method">getVars</span>(),
36 -&gt;<span class="method">clearVars</span>()
37
38 <h3>Models an helpers</h3>
39 -&gt;<span class="method">useModel(s)</span>(),
40 -&gt;<span class="method">useHelper(s)</span>()
41
42 <h3>Authentication</h3>
43 -&gt;<span class="method">setSecure</span>(S|L|A),
44 -&gt;<span class="method">checkCredential</span>($crendentials, S|L|A)
45
46 <h3>Cache</h3>
47 -&gt;<span class="method">setCache</span>($time, S|L|A),
48 -&gt;<span class="method">cacheExists</span>(),
49 -&gt;<span class="method">isCached</span>()
50 <br /><span class="method">sfView::ALL</span> (toutes les actions)
51
52 <h3>Introspection</h3>
53 -&gt;<span class="method">getModuleName</span>(),
54 -&gt;<span class="method">getActionName</span>()
55
56 <h3>Templates</h3>
57 -&gt;<span class="method">setHasLayout</span>($boolean),
58 -&gt;<span class="method">hasLayout</span>()
59 -&gt;<span class="method">setLayout</span>($name)
60 -&gt;<span class="method">setTemplate</span>($name)
61
62 </div>
63 </div>
64
65 <div class="subcol">
66 <h2>sfUser &lt; SecurityUser &lt; User &lt; ParameterHolder</h2>
67 <div class="content">
68
69 <h3>Authentication</h3>
70 -&gt;<span class="method">isAuthenticated</span>(),
71 -&gt;<span class="method">setAuthenticated</span>(B)
72
73 <h3>Droits</h3>
74 -&gt;<span class="method">addCredentials</span>(S|L|A),
75 -&gt;<span class="method">hasCredential</span>(S|L|A),
76 -&gt;<span class="method">clearCredentials</span>(),
77 -&gt;<span class="method">removeCredential</span>(S)
78
79 <h3>Language</h3>
80 -&gt;<span class="method">setCulture</span>(code ISO),
81 -&gt;<span class="method">getCulture</span>()
82
83 </div>
84 </div>
85
86 <div class="subcol">
87 <h2>WebRequest &lt; Request &lt; ParameterHolder</h2>
88 <div class="content">
89 For access to parameters, cf. ParameterHolder class.
90
91 <h3>Form validation</h3>
92 -&gt;<span class="method">getError</span>($name),
93 -&gt;<span class="method">getErrors</span>(),
94 -&gt;<span class="method">hasError</span>($name),
95 -&gt;<span class="method">hasErrors</span>(),
96 -&gt;<span class="method">setError</span>($name, $message),
97 -&gt;<span class="method">getErrorNames</span>(), -&gt;<span class="method">removeError</span>($name)
98
99 <h3>Files</h3>
100 -&gt;<span class="method">moveFile</span>($name, $file, [$fileMode = 0666], [$create = true], [$dirMode = 0777]),
101 -&gt;<span class="method">hasFileError</span>($name),
102 -&gt;<span class="method">hasFileErrors</span>(),
103 -&gt;<span class="method">getFileName</span>($name),
104 -&gt;<span class="method">getFiles</span>(),
105 -&gt;<span class="method">hasFile</span>($name),
106 -&gt;<span class="method">hasFiles</span>(),
107 -&gt;<span class="method">getFile</span>($name), -&gt;<span class="method">getFileType</span>($name), -&gt;<span class="method">getFileError</span>($name), -&gt;<span class="method">getFileNames</span>(), -&gt;<span class="method">getFilePath</span>($name), -&gt;<span class="method">getFileSize</span>($name)
108
109 <h3>Attributes</h3>
110 -&gt;<span class="method">getAttribute</span>($name),
111 -&gt;<span class="method">getAttributeNames</span>(),
112 -&gt;<span class="method">hasAttribute</span>($name),
113 -&gt;<span class="method">setAttribute</span>($name, $value),
114 -&gt;<span class="method">removeAttribute</span>($name),
115 -&gt;<span class="method">clearAttributes</span>()
116
117 </div>
118 </div>
119
120 <div class="subcol">
121 <h2>ParameterHolder</h2>
122 <div class="content">
123 -&gt;<span class="method">clearParameters</span>(),
124 -&gt;<span class="method">getParameter</span>($name, [$default]),
125 -&gt;<span class="method">getParameterNames</span>(),
126 -&gt;<span class="method">getParameters</span>(),
127 -&gt;<span class="method">hasParameter</span>($name),
128 -&gt;<span class="method">removeParameter</span>($name),
129 -&gt;<span class="method">setParameter</span>($name, $value),
130 -&gt;<span class="method">setParameters</span>($parameters),
131 -&gt;<span class="method">setParameterByRef</span>($name, $value),
132 -&gt;<span class="method">setParametersByRef</span>(&$parameters)
133
134 </div>
135 </div>
136
137 <!-- column end -->
138 </div>
139
140 <!-- column start -->
141 <div class="col">
142
143 <div class="subcol">
144 <h2>Validators</h2>
145 <div class="content">
146 <ul>
147 <li><span class="method">NumberValidator</span> [max], [max_error], [min], [min_error], [nan_error], [type], [type_error]</li>
148 <li><span class="method">RegexValidator</span> pattern, [match], [match_error]</li>
149 <li><span class="method">StringValidator</span> [insensitive], [max], [max_error], [min], [min_error], [values], [values_errors]</li>
150 <li><span class="method">sfEmailValidator</span> [email_error]</li>
151 <li><span class="method">sfHtmlValidator</span> [html_error]</li>
152 </ul>
153
154 </div>
155 </div>
156
157 <div class="subcol">
158 <h2>schema.xml</h2>
159 <div class="content">
160
161 <pre>
162 &lt;?xml version="1.0" encoding="UTF-8"?&gt;
163 &lt;database name="DATABASE_NAME" defaultIdMethod="native"&gt;
164 &nbsp;&lt;table name="TABLE_NAME"&gt;
165 &nbsp;&nbsp;&nbsp;&lt;column name="COLUMN_NAME" [phpName="PHP_NAME"]
166 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type="(integer|varchar|longvarchar|date|boolean)"
167 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[required="true"] [defaultValue=""]
168 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[primaryKey="true"] [autoIncrement="true"] /&gt;
169 &nbsp;&nbsp;&lt;foreign-key foreignTable="TABLE_BIS_NAME"&gt;
170 &nbsp;&nbsp;&nbsp;&lt;reference local="id_TABLE_BIS_NAME" foreign="id"/&gt;
171 &nbsp;&nbsp;&lt;/foreign-key&gt;
172 &nbsp;&lt;/table&gt;
173 &lt;/database&gt;
174 </pre>
175
176 </div>
177 </div>
178
179 <div class="subcol">
180 <h2>Generated object classes</h2>
181 <div class="content">
182
183 <h3>Object.class.php</h3>
184 <ul>
185 <li>-&gt;<span class="method">get[PHP_COLUMN]</span>(), -&gt;<span class="method">set[PHP_COLUMN]</span>($value)</li>
186 <li>-&gt;<span class="method">add[RELATED COLUMN]</span>($obj), -&gt;<span class="method">get[RELATED COLUMN]</span>()</li>
187 <li>-&gt;<span class="method">getByName</span>($name), -&gt;<span class="method">setByName</span>($name, $value)</li>
188 <li>-&gt;<span class="method">save</span>(), -&gt;<span class="method">delete</span>(), -&gt;<span class="method">copy</span>()</li>
189 </ul>
190
191 <h3>ObjectPeer.class.php</h3>
192 $c : Criteria
193 <ul>
194 <li>::<span class="method">doCount</span>($c), ::<span class="method">doSelectOne</span>($c), ::<span class="method">doDeleteAll</span>(), ::<span class="method">doSelect</span>($c)</li>
195 <li>::<span class="method">retrieveByPK</span>($pk)</li>
196 <li>::<span class="method">doSelectJoin[JOIN_COLUMN]</span>($c), ::<span class="method">doSelectJoinAll</span>($c)</li>
197 </ul>
198
199 <h3>Criteria</h3>
200 <ul>
201 <li>-&gt;<span class="method">setLimit</span>($limit)</li>
202 <li>-&gt;<span class="method">setOffset</span>($offset)</li>
203 <li>-&gt;<span class="method">addGroupByColumn</span>($groupBy), -&gt;<span class="method">clearGroupByColumns</span>()</li>
204 <li>-&gt;<span class="method">add(Asc|Desc)endingOrderByColumn</span>($name), -&gt;<span class="method">clearOrderByColumns</span>()</li>
205 </ul>
206
207 </div>
208 </div>
209
210 <div class="subcol">
211 <h2>Exemple Action</h2>
212 <div class="content">
213
214 <pre>
215 class mainActions extends sfActions
216 {
217   public function preExecute()
218   {
219     $this->setCache(2 * 86400, 'Index', 'Show');
220     $this->useModels('person', 'company');
221     $this->useHelpers('Wiki', 'List');
222   }
223
224   public function executeIndex()
225   {
226     $this->setVar('persons', PersonPeer::doSelect());
227     return sfView::SUCCESS;
228   }
229 }
230 </pre>
231
232 </div>
233 </div>
234
235 <div class="subcol">
236 <h2>Command line</h2>
237 <div class="content">
238
239 <h3>Administration</h3>
240 <ul>
241 <li><span class="method">clear-cache</span> cache erase all</li>
242 <li><span class="method">sync-prod[-dry]</span> synchronisation (-dry test)</li>
243 </ul>
244
245 <h3>Generation</h3>
246 <ul>
247 <li><span class="method">init-project</span> projet creation</li>
248 <li><span class="method">propel-build-model</span> object model generation</li>
249 <li><span class="method">propel-generate-crud</span> back-office generation</li>
250 </ul>
251
252 </div>
253 </div>
254
255 <!-- column end -->
256 </div>
257
258 <!-- column start -->
259 <div class="col">
260
261 <div class="subcol">
262 <h2>Template helpers</h2>
263 <div class="content">
264 $options : additional html attributes, in hash or string syntax<br />
265 <span class="method">Array('class' => 'myclass', 'id' => 12, 'style' => 'width:100px' )</span><br />
266 <span class="method">'class=myclass id=12 style=width:100px'</span>
267
268 <h3>URL</h3>
269 <ul>
270 <li><span class="method">url_for</span>($url, [absolute=true])</li>
271 <li><span class="method">link_to</span>($name, $url, [$options])</li>
272 </ul>
273 $url: module/action?param=value or @rule?param=value
274
275 <h3>Form</h3>
276 <ul>
277 <li><span class="method">form_tag</span>($url, [$options])</li>
278 <li><span class="method">input_tag</span>($name, [$value], [$options])</li>
279 <li>same for <span class="method">input_hidden_tag</span>, <span class="method">input_password_tag</span>, <span class="method">textarea_tag</span></li>
280 <li><span class="method">select_tag</span>($name, [$option_tags], [$options])</li>
281 <li><span class="method">options_for_select</span>($options, [$selected])</li>
282 <li><span class="method">input_file_tag</span>($name, [$options])</li>
283 <li><span class="method">checkbox_tag</span>($name, [$value = 1], [$checked = false], [$options])</li>
284 <li><span class="method">radiobutton_tag</span>($name, $value, [$checked = false], [$options])</li>
285 <li><span class="method">submit_tag</span>($value, [$options])</li>
286 </ul>
287
288 <h3>Assets</h3>
289 <ul>
290 <li><span class="method">auto_discovery_link_tag</span>([$type], [$options])</li>
291 <li><span class="method">javascript_tag</span>(S|L|A) by default in js/ and .js</li>
292 <li><span class="method">image_path</span>($source) by default in images/ and .png</li>
293 <li><span class="method">image_tag</span>($source, [$options])</li>
294 </ul>
295
296 <h3>I18N</h3>
297 <ul>
298 <li><span class="method">__</span>($text, [$culture])</li>
299 </ul>
300
301 <h3>Templates</h3>
302 <ul>
303 <li><span class="method">include_partial</span>($name, [$vars]) inclusion template 'name', 'module/name' ou 'global/name'</li>
304 </ul>
305
306 <h3>Text</h3>
307 <ul>
308 <li><span class="method">truncate_text</span>($text, $length = 30, $truncate_string = '...')</li>
309 <li><span class="method">highlight_text</span>($text, $phrase, [$highlighter]) classe 'highlight' par défaut</li>
310 <li><span class="method">excerpt_text</span>($text, $phrase, $radius = 100, $excerpt_string = '...')</li>
311 <li><span class="method">simple_format_text</span>($text)</li>
312 <li><span class="method">auto_link_text</span>($text, $link = 'all')</li>
313 <li><span class="method">strip_links_text</span>($text)</li>
314 </ul>
315
316 <h3>Date</h3>
317 <ul>
318 <li><span class="method">format_date</span>($timestamp, [$culture])</li>
319 <li><span class="method">distance_of_time_in_words</span>($from_timestamp, $to_timestamp, [$include_seconds])</li>
320 <li><span class="method">time_ago_in_words</span>($from_timestamp, [$include_seconds])</li>
321 </ul>
322
323 <h3>Partial cache</h3>
324 <ul>
325 <li><span class="method">cache</span>($cache_time = 3600)</li>
326 <li><span class="method">cache_save</span>
327 <br />&lt;?php if (!cache()): ?&gt;... HTML ...&lt;?php cache_save() ?&gt;&lt;?php endif ?&gt;
328 </li>
329 </ul>
330
331 <h3>Javascript</h3>
332 <ul>
333 <li><span class="method">link_to_function</span>($name, $function, [$html_options])<br />link_to_function(image_tag("delete"), "if confirm('Really?'){ do_delete(); }")</li>
334 <li><span class="method">link_to_remote</span>($name, [$options], [$html_options])</li>
335 <li><span class="method">form_remote_tag([$options])</span></li>
336 <li><span class="method">remote_function</span>($options)</li>
337 <li><span class="method">observe_field</span>($field_id, [$options])</li>
338 <li><span class="method">observe_form</span>($form_id, [$options])</li>
339 <li><span class="method">escape_javascript</span>($javascript])</li>
340 </ul>
341
342 <h3>Object</h3>
343 $object represents the object (Propel)
344 <br />$column represents the column name ($object->get$column())
345 <br />unique signature: ($object, $column, [$options], [$value])
346 <span class="method">object_plain</span>,
347 <span class="method">object_textarea_tag</span>,
348 <span class="method">object_image_tag</span>,
349 <span class="method">object_date_tag</span>,
350 <span class="method">object_input_password_tag</span>,
351 <span class="method">object_select_tag</span>,
352 <span class="method">object_input_hidden_tag</span>,
353 <span class="method">object_input_tag</span>,
354 <span class="method">object_checkbox_tag</span>
355
356 </div>
357 </div>
358
359 <!-- column end -->
360 </div>
361
362 <!-- column start -->
363 <div class="col">
364
365 <div class="minisubcol">
366 <h2>Tree structure</h2>
367 <div class="content">
368
369 <ul>
370 <li><div style="float: right">[SF_ROOT_DIR]</div>/</li>
371 <li><div style="float: right">[SF_APP_DIR]</div>apps/</li>
372 <li><div style="float: right">x n applications</div>&nbsp;&nbsp;[APP]/</li>
373 <li><div style="float: right">[SF_MESSAGES_DIR]</div>&nbsp;&nbsp;&nbsp;&gt;&nbsp;i18n/</li>
374
375 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;lib/</li>
376 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;config/</li>
377 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;i18n/</li>
378 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;lib/</li>
379 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;modules/</li>
380 <li><div style="float: right">x n modules</div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;[MODULE]/</li>
381 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;actions/</li>
382 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;Actions.class.php</li>
383 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;config/</li>
384 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;lib/</li>
385 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;templates/</li>
386 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;IndexSuccess.php</li>
387 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;validate/</li>
388 <li>&nbsp;&nbsp;&nbsp;&gt;&nbsp;templates/</li>
389 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;layout.php</li>
390 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;error.php</li>
391 <li><div style="float: right"></div>batch/</li>
392 <li><div style="float: right">[MO_CACHE_DIR]</div>cache/</li>
393 <li>&nbsp;&gt;&nbsp;[APP]/</li>
394 <li>&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;[ENV]/</li>
395 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;config/</li>
396 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;template/</li>
397 <li>config/</li>
398 <li>&nbsp;&nbsp;&gt;&nbsp;build.properties</li>
399 <li>&nbsp;&nbsp;&gt;&nbsp;rsync_exclude.txt</li>
400 <li>&nbsp;&nbsp;&gt;&nbsp;schema.xml</li>
401 <li>data/</li>
402 <li>&nbsp;&gt;&nbsp;sql/</li>
403 <li>doc/</li>
404 <li><div style="float: right">[SF_CLASSES_DIR]</div>lib/</li>
405 <li>&nbsp;&gt;&nbsp;model/</li>
406 <li>&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;om/</li>
407 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;Base[OBJECT].php</li>
408 <li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;Base[OBJECT]Peer.php</li>
409 <li>&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;[OBJECT].php</li>
410 <li>&nbsp;&nbsp;&nbsp;&nbsp;&gt;&nbsp;[OBJECT]Peer.php</li>
411 <li>log/</li>
412 <li>test/</li>
413 <li>&nbsp;&gt;&nbsp;sf/</li>
414 <li><div style="float: right">[SF_WEB_DIR]</div>web/</li>
415 <li>&nbsp;&gt;&nbsp;css/</li>
416 <li>&nbsp;&gt;&nbsp;images/</li>
417 <li>&nbsp;&gt;&nbsp;js/</li>
418 <li><div style="float: right">[SF_UPLOAD_DIR]</div>&nbsp;&gt;&nbsp;uploads/</li>
419 <li>&nbsp;&gt;&nbsp;index.php</li>
420 </ul>
421
422 </div>
423 </div>
424
425 <div class="minisubcol">
426 <h2>Constants</h2>
427 <div class="content">
428
429 <h3>Symfony</h3>
430 <ul>
431 <li><span class="method">SF_PROJECT</span></li>
432 <li><span class="method">SF_DEBUG</span></li>
433 <li><span class="method">SF_DEFAULT_CULTURE</span></li>
434 <li><span class="method">SF_TIMEOUT</span></li>
435 </ul>
436
437 <h3>Criteria</h3>
438 <ul>
439 <li><span class="method">EQUAL / NOT_EQUAL</span></li>
440 <li><span class="method">GREATER_THAN / LESS_THAN</span></li>
441 <li><span class="method">GREATER_EQUAL / LESS_EQUAL</span></li>
442 <li><span class="method">LIKE / NOT LIKE / ILIKE / NOT ILIKE</span></li>
443 <li><span class="method">IN / NOT IN</span></li>
444 </ul>
445
446 </div>
447 </div>
448
449 <!-- end column -->
450 </div>
451
452 <!--
453 TODO
454 * sf-gen, sf-admin
455 * Exemple rapide d'une template, d'un criterion
456 * Classes spécifiques : sfMail, sfPager, sfShoppingCart, sfThumbnail
457 //-->
458
459 <div style="clear: both">
460
461 <div class="footnote"></div>
462
463 </body>
464 </html>
Note: See TracBrowser for help on using the browser.