Welcome to the Cookbook

loading...

How to help

There is no translation yet for this section. Please help out and translate this.. More information about translations

There are a number of ways to help the CakePHP project, if you're looking to help out - find your calling!

# Contribuire a "The CookBook"

La community di CakePHP dipende dall'aiuto delle persone proprio come te. La documentazione è stata studiata per permettere a chiunque di indicare e inserire modifiche dove necessario. Se sei un principiante di CakePHP tu puoi fare la differenza, e sei tra le persone più adatte a proporre cambiamenti alla documentazione. I contributi vengono revisionati dal documentation team per verificare consistenza, accuratezza e forma. Prima che tu lo faccia, eccoti alcune note e linee guida da tenere a mente:

  • Sii conciso. Le gente cerca risposte in fretta e non vuole leggere un sacco di testo per trovare la risposta.
  • Puoi inviare in puro testo(in paragrafi), verrà formattato automaticamente in html.
  • Segmenta i contenuti. Suddividi i tuoi contenuti per renderli più veloci da scorrere. Usa le sotto-sezioni, i blocchi di codice, le liste e le tabelle in modo opportuno
  • Racchiudi il codice inline con dei tag <code> . Non usare virgolette intorno al codice. Per esempio, "La variabile $uses specifica quali modelli usare."
  • Racchiudi i blocchi di codice con dei tag <pre>. Per esempio:
        <pre>
    	$this->functionName();
    	$this->otherFunctionName();
        

    Non è necessario fare l'escape del contenuto tra i tag pre

  • Indirizzi di file e URL dovrebbero essere racchiusi tra i tag <kbd> .
  • Quando serve un dominio di esempio usa example.com . L'obiettivo è di essere generico e non sarà mai connesso ad un sito porno o di spam. (vedi RFC 2606)
  • I collegamenti ad altre pagine nel book dovrebbero essere senza il dominio. Ad esempio: /view/181/built-in-helpers
  • Gli esempi di codice dovrebbe rispettare i CakePHP Coding Standards.
  • Usa le classi predefinite per i metodi (method), avvertimenti(warning) e note(note).
  • Ed infine: Controlla l'anteprima! Se non sembra a posto a te - non sembrerà a posto neanche alla revisione.

# Special CSS Classes

Ci sono alcuni elementi che possono essere oggetto di particolare attenzione. Questi elementi richiedono uno speciale attributo di classe da applicare all'elemento.

# Warning

There is no translation yet for this section. Please help out and translate this.. More information about translations

Warnings should be used to let the user know about something that is important such as indicating that a method or property is deprecated. It could also be used to point out where certain usage might create adverse effects.

Example:

This method has been deprecated. Please use methodName.

<p class="warning">This method has been deprecated. Please use <a href="#">methodName</a>.</p>
  1. <p class="warning">This method has been deprecated. Please use <a href="#">methodName</a>.</p>

Alternatively, if you have a warning that spans across multiple block elements then use a DIV to wrap all elements.

Example:

This approach may create serious performance degradation. Consider alternative approaches:

  • Approach A
  • Approach B
<div class="warning">
   <p>This approach may create serious performance degradation. Consider alternative approaches:</p>
   <ul>
      <li>Approach A</li>
      <li>Approach B</li>
   </ul>
</div>
  1. <div class="warning">
  2. <p>This approach may create serious performance degradation. Consider alternative approaches:</p>
  3. <ul>
  4. <li>Approach A</li>
  5. <li>Approach B</li>
  6. </ul>
  7. </div>
# Note

There is no translation yet for this section. Please help out and translate this.. More information about translations

A note can be used to highlight information that a reader should know or be aware of when developing their application.

Example:

You can add conditions to any of the methods to narrow down your results.

<p class="note">You can add conditions to any of the methods to narrow down your results.</p>
  1. <p class="note">You can add conditions to any of the methods to narrow down your results.</p>

A note that needs to span across multiple block elements should use a DIV that wraps all elements. See the previous section for example.

# Method

There is no translation yet for this section. Please help out and translate this.. More information about translations

The method class should be used to wrap the method statement, parameters, and return value. The class is only applied to a single paragraph element.

Example:

string render (array $options = array())

<p class="method">
   <code>string render (array $options = array())</code>
</p>
  1. <p class="method">
  2. <code>string render (array $options = array())</code>
  3. </p>
# Code and pre tags

There is no translation yet for this section. Please help out and translate this.. More information about translations

Pre tags are assumed to contain php code unless otherwise specified

There are however other classes which can be used for pre tags specifcally:

plain for plain text. I.e. entering:

<pre class="plain">
Plain text
With self entered carriage return
</pre>

Gives:

Plain text
With self entered carriage return

shell for shell commands. I.e. entering:

<pre class="shell">
$ cake bake shell code
</pre>

Gives:

$ cake bake shell code

# Translating Cookbook's fixed texts

The original text for this section has changed since it was translated. Please help resolve this difference. You can:

More information about translations

Bozza

# Translating

There is no translation yet for this section. Please help out and translate this.. More information about translations

If a section of the book hasn't been translated into your language yet it will appear in English. The CookBook relies on submissions from users just like you to share and add to the information accumulated here. See Contributing to the CookBook for general guidelines on submissions.

Stub - add notes regarding sync markers

# Tickets

There is no translation yet for this section. Please help out and translate this.. More information about translations

The following is a list of shortcuts which point to custom queries on the CakePHP Lighthouse (ticket tracking) site. These queries help break down the mass of tickets into smaller groups, categorized by subject matter. These links point only to tickets which are currently open, sorted from oldest to newest.

"Tiny URLs" for the queries are provided (in addition to the direct URLs) as a convenience for copying and pasting into the various communication channels used by the community.

# Enhancement Freeze

There is no translation yet for this section. Please help out and translate this.. More information about translations

  • Please be advised that all enhancement tickets for created 1.3 are being pushed to 2.0.
  • Please note that enhancement tickets are no longer accepted for 1.1, 1.2 or 1.3 as they are stable releases.

# How to help close existing tickets

There is no translation yet for this section. Please help out and translate this.. More information about translations

The best way to help out is by creating tests and patches, which can be submitted as tickets via Lighthouse. This will ease the burden on the core development team. Refer to the Testing section within the Cookbook which covers how to install SimpleTest and how to create test cases. It's important that your tests be verified on the latest version of CakePHP, available via GitHub.

If you feel more comfortable/skilled/knowledgeable in a certain category listed below, bookmark the link and browse the tickets within that category. It is possible to submit test cases and patches for other people's tickets once you have registered on the Lighthouse site — it could help bring resolution to an outstanding bug or highly sought after enhancement.

# Bugreport

There is no translation yet for this section. Please help out and translate this.. More information about translations

You must be registered on lighthouse to be able to submit a ticket. Register here.

# Before you submit a ticket

There is no translation yet for this section. Please help out and translate this.. More information about translations

  • Ask someone in the irc channel for help confirming it is a bug and not a simple error/misunderstanding.
  • Search the google group archives to see if someone has already solved your problem.
  • Send an email (post a message) to the google group to see if anyone else has seen the issue.
  • Check the current tickets to see if your bug has already been reported.
  • Look at the Timeline to see if the problem you experienced has already been fixed.
  • Verify your version of CakePHP. If you are not using the latest code (http://code.cakephp.org/source) try updating to the newest stable or obtaining the HEAD of the relevant git branch see if your problem is already fixed.
# How to report a bug

There is no translation yet for this section. Please help out and translate this.. More information about translations

There are a small number of people who actually develop CakePHP. In between documenting, planning, answering questions, developing features for new releases and sometimes pretending that they have lives outside of CakePHP, bugs tend to be last on a very long to-do list for them. To catch the eye of one of these few volunteers, you'll need to take to heart a few tips on how to report a bug so that they can and will help you.

Please note the word volunteer :). The people who are going to help you with a bug are volunteers. Not only are you not paying them to help you, but nobody else is either. So, be nice to them.

Beyond that golden rule, what follows are some additional tips on ways to make your bug report better so that someone will be able to help you.

# The basics: what you did, what you expected, and what actually happened

There is no translation yet for this section. Please help out and translate this.. More information about translations

There are three basic parts of a bug report which can greatly reduce the amount of time spent finding the solution: You need to be specific in describing what you did, what you were expecting, and why it didn't meet your expectations. If you don't provide this information, then we have to guess and we all know that doesn't work too well. :)

  • Report one problem in each bug report.
  • If you have encountered two bugs that don't appear to be related, create a new bug report for each one. This makes it easier for different people to help with the different bugs.
  • Please select the appropriate values for the ticket properties that match your problem. Pay special attention to the Component, Milestone and Version values.
  • Valid test cases are a great help, patches are invited. Test cases and patches included together with a ticket are preferred.

View Current Tickets

Report a bug

There is no translation yet for this section. Please help out and translate this.. More information about translations

The following is a list of shortcuts which point to custom queries on the CakePHP Trac (ticket tracking) site. These queries help break down the mass of tickets into smaller groups, categorized by subject matter. These links point only to tickets which are currently open, sorted from oldest to newest.

"Tiny URLs" for the queries are provided (in addition to the direct URLs) as a convenience for copying and pasting into the various communication channels used by the community.

  1. Available Reports
  2. Tickets Related To The Official Web Sites [tinyurl]
# CakePHP 1.2 specific

There is no translation yet for this section. Please help out and translate this.. More information about translations

  1. Bugs [tinyurl]
  2. Documentation [tinyurl]
  3. Enhancements [tinyurl]
  4. Optimizations [tinyurl]
  5. Other [tinyurl]
# Specific Areas
# CakePHP 1.1 specific

There is no translation yet for this section. Please help out and translate this.. More information about translations

  1. Bugs [tinyurl]
  2. Documentation [tinyurl]
  3. Other [tinyurl]