CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Team
    • Issues (Github)
    • YouTube Channel
    • Get Involved
    • Bakery
    • Featured Resources
    • Newsletter
    • Certification
    • My CakePHP
    • CakeFest
    • Facebook
    • Twitter
    • Help & Support
    • Forum
    • Stack Overflow
    • IRC
    • Slack
    • Paid Support
CakePHP

C CakePHP 3.8 Red Velvet API

  • Overview
  • Tree
  • Deprecated
  • Version:
    • 3.8
      • 3.8
      • 3.7
      • 3.6
      • 3.5
      • 3.4
      • 3.3
      • 3.2
      • 3.1
      • 3.0
      • 2.10
      • 2.9
      • 2.8
      • 2.7
      • 2.6
      • 2.5
      • 2.4
      • 2.3
      • 2.2
      • 2.1
      • 2.0
      • 1.3
      • 1.2

Namespaces

  • Cake
    • Auth
      • Storage
    • Cache
      • Engine
    • Collection
      • Iterator
    • Command
    • Console
      • Exception
    • Controller
      • Component
      • Exception
    • Core
      • Configure
        • Engine
      • Exception
      • Retry
    • Database
      • Driver
      • Exception
      • Expression
      • Schema
      • Statement
      • Type
    • Datasource
      • Exception
    • Error
      • Middleware
    • Event
      • Decorator
    • Filesystem
    • Form
    • Http
      • Client
        • Adapter
        • Auth
      • Cookie
      • Exception
      • Middleware
      • Session
    • I18n
      • Formatter
      • Middleware
      • Parser
    • Log
      • Engine
    • Mailer
      • Exception
      • Transport
    • Network
      • Exception
    • ORM
      • Association
      • Behavior
        • Translate
      • Exception
      • Locator
      • Rule
    • Routing
      • Exception
      • Filter
      • Middleware
      • Route
    • Shell
      • Helper
      • Task
    • TestSuite
      • Fixture
      • Stub
    • Utility
      • Exception
    • Validation
    • View
      • Exception
      • Form
      • Helper
      • Widget
  • None

Classes

  • ArrayContext
  • ContextFactory
  • EntityContext
  • FormContext
  • NullContext

Interfaces

  • ContextInterface

Class ArrayContext

Provides a basic array based context provider for FormHelper.

This adapter is useful in testing or when you have forms backed by simple array data structures.

Important keys:

  • defaults The default values for fields. These values will be used when there is no request data set. Data should be nested following the dot separated paths you access your fields with.
  • required A nested array of fields, relationships and boolean flags to indicate a field is required. The value can also be a string to be used as the required error message
  • schema An array of data that emulate the column structures that Cake\Database\Schema\Schema uses. This array allows you to control the inferred type for fields and allows auto generation of attributes like maxlength, step and other HTML attributes. If you want primary key/id detection to work. Make sure you have provided a _constraints array that contains primary. See below for an example.
  • errors An array of validation errors. Errors should be nested following the dot separated paths you access your fields with.

    Example

    $data = [
    'schema' => [
     'id' => ['type' => 'integer'],
     'title' => ['type' => 'string', 'length' => 255],
     '_constraints' => [
       'primary' => ['type' => 'primary', 'columns' => ['id']]
     ]
    ],
    'defaults' => [
     'id' => 1,
     'title' => 'First post!',
    ],
    'required' => [
     'id' => true, // will use default required message
     'title' => 'Please enter a title',
     'body' => false,
    ],
    ];
    
Cake\View\Form\ArrayContext implements Cake\View\Form\ContextInterface
Namespace: Cake\View\Form
Location: View/Form/ArrayContext.php

Properties summary

  • $_context protected
    array
    Context data for this object.
  • $_request protected
    Cake\Http\ServerRequest
    The request object.

Method Summary

  • __construct() public
    Constructor.
  • attributes() public
    Get an associative array of other attributes for a field name.
  • error() public
    Get the errors for a given field
  • fieldNames() public
    Get the fieldnames of the top level object in this context.
  • getMaxLength() public
    Get field length from validation
  • getRequiredMessage() public
  • hasError() public
    Check whether or not a field has an error attached to it
  • isCreate() public
    Returns whether or not this form is for a create operation.
  • isPrimaryKey() public
    Returns true if the passed field name is part of the primary key for this context
  • isRequired() public
    Check if a given field is 'required'.
  • primaryKey() public
    Get the fields used in the context as a primary key.
  • stripNesting() protected
    Strips out any numeric nesting
  • type() public
    Get the abstract field type for a given field name.
  • val() public
    Get the current value for a given field.

Method Detail

__construct() public ¶

__construct( Cake\Http\ServerRequest $request , array $context )

Constructor.

Parameters
Cake\Http\ServerRequest $request
The request object.
array $context
Context info.

attributes() public ¶

attributes( string $field )

Get an associative array of other attributes for a field name.

Parameters
string $field
A dot separated path to get additional data on.
Returns
array
An array of data describing the additional attributes on a field.
Implementation of
Cake\View\Form\ContextInterface::attributes()

error() public ¶

error( string $field )

Get the errors for a given field

Parameters
string $field
A dot separated path to check errors on.
Returns
array

An array of errors, an empty array will be returned when the context has no errors.


Implementation of
Cake\View\Form\ContextInterface::error()

fieldNames() public ¶

fieldNames( )

Get the fieldnames of the top level object in this context.

Returns
string[]
A list of the field names in the context.
Implementation of
Cake\View\Form\ContextInterface::fieldNames()

getMaxLength() public ¶

getMaxLength( string $field )

Get field length from validation

In this context class, this is simply defined by the 'length' array.

Parameters
string $field
A dot separated path to check required-ness for.
Returns
integer|null

getRequiredMessage() public ¶

getRequiredMessage( $field )

hasError() public ¶

hasError( string $field )

Check whether or not a field has an error attached to it

Parameters
string $field
A dot separated path to check errors on.
Returns
boolean
Returns true if the errors for the field are not empty.
Implementation of
Cake\View\Form\ContextInterface::hasError()

isCreate() public ¶

isCreate( )

Returns whether or not this form is for a create operation.

For this method to return true, both the primary key constraint must be defined in the 'schema' data, and the 'defaults' data must contain a value for all fields in the key.

Returns
boolean
Implementation of
Cake\View\Form\ContextInterface::isCreate()

isPrimaryKey() public ¶

isPrimaryKey( string $field )

Returns true if the passed field name is part of the primary key for this context

Parameters
string $field

A dot separated path to the field a value is needed for.

Returns
boolean
Implementation of
Cake\View\Form\ContextInterface::isPrimaryKey()

isRequired() public ¶

isRequired( string $field )

Check if a given field is 'required'.

In this context class, this is simply defined by the 'required' array.

Parameters
string $field
A dot separated path to check required-ness for.
Returns
boolean
Implementation of
Cake\View\Form\ContextInterface::isRequired()

primaryKey() public ¶

primaryKey( )

Get the fields used in the context as a primary key.

Returns
array
Implementation of
Cake\View\Form\ContextInterface::primaryKey()

stripNesting() protected ¶

stripNesting( string $field )

Strips out any numeric nesting

For example users.0.age will output as users.age

Parameters
string $field
A dot separated path
Returns
string
A string with stripped numeric nesting

type() public ¶

type( string $field )

Get the abstract field type for a given field name.

Parameters
string $field
A dot separated path to get a schema type for.
Returns
string|null
An abstract data type or null.
See
Cake\Database\Type
Implementation of
Cake\View\Form\ContextInterface::type()

val() public ¶

val( string $field , array $options = [] )

Get the current value for a given field.

This method will coalesce the current request data and the 'defaults' array.

Parameters
string $field

A dot separated path to the field a value is needed for.

array $options optional []

Options: - default: Default value to return if no value found in request data or context record. - schemaDefault: Boolean indicating whether default value from context's schema should be used if it's not explicitly provided.

Returns
mixed
Implementation of
Cake\View\Form\ContextInterface::val()

Magic methods inherited from Cake\View\Form\ContextInterface

getMaxLength(), getRequiredMessage()

Properties detail

$_context ¶

protected array

Context data for this object.

$_request ¶

protected Cake\Http\ServerRequest

The request object.

Follow @CakePHP
#IRC
OpenHub
Rackspace
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Logos & Trademarks
  • Community
  • Team
  • Issues (Github)
  • YouTube Channel
  • Get Involved
  • Bakery
  • Featured Resources
  • Newsletter
  • Certification
  • My CakePHP
  • CakeFest
  • Facebook
  • Twitter
  • Help & Support
  • Forum
  • Stack Overflow
  • IRC
  • Slack
  • Paid Support

Generated using CakePHP API Docs