本文整理汇总了PHP中fORM类的典型用法代码示例。如果您正苦于以下问题:PHP fORM类的具体用法?PHP fORM怎么用?PHP fORM使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了fORM类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: testClassToDatabaseMapping
public function testClassToDatabaseMapping()
{
$this->assertEquals('default', fORM::getDatabaseName('User'));
$this->assertEquals('default', fORM::getDatabaseName('PhotoGallery'));
fORM::mapClassToDatabase('User', 'second_db');
$this->assertEquals('second_db', fORM::getDatabaseName('User'));
}
开发者ID:nurulimamnotes,项目名称:flourish-old,代码行数:7,代码来源:fORMTest.php
示例2: setUpBeforeClass
public static function setUpBeforeClass()
{
if (defined('SKIPPING')) {
return;
}
$db = new fDatabase(DB_TYPE, DB, DB_USERNAME, DB_PASSWORD, DB_HOST, DB_PORT);
if (DB_TYPE == 'sqlite') {
$db->execute(file_get_contents(DB_SETUP_FILE));
$db->execute(file_get_contents(DB_EXTENDED_SETUP_FILE));
}
$db->execute(file_get_contents(DB_POPULATE_FILE));
$db->execute(file_get_contents(DB_EXTENDED_POPULATE_FILE));
self::$db = $db;
self::$schema = new fSchema($db);
fORMDatabase::attach(self::$db);
fORMSchema::attach(self::$schema);
fORMOrdering::configureOrderingColumn('TopAlbum', 'position');
fORMOrdering::configureOrderingColumn('FavoriteAlbum', 'position');
fORMOrdering::configureOrderingColumn('YearFavoriteAlbum', 'position');
if (defined('MAP_TABLES')) {
fORM::mapClassToTable('User', 'user');
fORM::mapClassToTable('Group', 'group');
fORM::mapClassToTable('Artist', 'popular_artists');
fORM::mapClassToTable('Album', 'records');
}
}
开发者ID:nurulimamnotes,项目名称:flourish-old,代码行数:26,代码来源:fORMOrderingTest.php
示例3: findByParams
/**
* @param array $where
* @return WpTesting_Model_AbstractTerm
* @throws fNotFoundException
*/
protected function findByParams(array $where = array())
{
$taxonomyTable = fORM::tablize('WpTesting_Model_Taxonomy');
try {
return fRecordSet::build($this->modelName, array($taxonomyTable . '.taxonomy=' => $this->getTaxonomy()) + $where)->getRecord(0);
} catch (fNoRemainingException $e) {
throw new fNotFoundException($this->modelName . ' not found by conditions: ' . var_export($where, true));
}
}
开发者ID:pmanterys,项目名称:wp-mw-newsletter,代码行数:14,代码来源:AbstractTerm.php
示例4: setUp
public function setUp()
{
if (defined('SKIPPING')) {
$this->markTestSkipped();
}
fORMDatabase::attach($this->sharedFixture['db']);
fORMDatabase::attach($this->sharedFixture['db2'], 'db2');
fORMSchema::attach($this->sharedFixture['schema']);
fORMSchema::attach($this->sharedFixture['schema2'], 'db2');
fORM::mapClassToTable('Db2User', 'users');
fORM::mapClassToDatabase('Db2User', 'db2');
fORM::mapClassToTable('Db2Group', 'groups');
fORM::mapClassToDatabase('Db2Group', 'db2');
}
开发者ID:philip,项目名称:flourish,代码行数:14,代码来源:fActiveRecordWithMultipleDatabasesTest.php
示例5: setUp
public function setUp()
{
if (defined('SKIPPING')) {
$this->markTestSkipped();
}
fORMDatabase::attach(self::$db);
fORMDatabase::attach(self::$db2, 'db2');
fORMSchema::attach(self::$schema);
fORMSchema::attach(self::$schema2, 'db2');
fORM::mapClassToTable('Db2User', 'users');
fORM::mapClassToDatabase('Db2User', 'db2');
fORM::mapClassToTable('Db2Group', 'groups');
fORM::mapClassToDatabase('Db2Group', 'db2');
}
开发者ID:netcarver,项目名称:flourish,代码行数:14,代码来源:fActiveRecordWithMultipleDatabasesTest.php
示例6: setUp
protected function setUp()
{
if (defined('SKIPPING')) {
return;
}
$db = new fDatabase(DB_TYPE, DB, DB_USERNAME, DB_PASSWORD, DB_HOST, DB_PORT);
$db->execute(file_get_contents(DB_SETUP_FILE));
$db->execute(file_get_contents(DB_EXTENDED_SETUP_FILE));
$db->execute(fix_schema(file_get_contents(DB_ALTERNATE_SCHEMA_SETUP_FILE)));
$db->clearCache();
fORMDatabase::attach($db);
$this->sharedFixture = $db;
fORM::mapClassToTable('Flourish2User', fix_schema('flourish2.users'));
fORM::mapClassToTable('Flourish2Group', fix_schema('flourish2.groups'));
fORM::mapClassToTable('Flourish2Artist', fix_schema('flourish2.artists'));
fORM::mapClassToTable('Flourish2Album', fix_schema('flourish2.albums'));
}
开发者ID:philip,项目名称:flourish,代码行数:17,代码来源:fRecordSetWithMultipleSchemasTest.php
示例7: setUp
protected function setUp()
{
if (defined('SKIPPING')) {
return;
}
$db = new fDatabase(DB_TYPE, DB, DB_USERNAME, DB_PASSWORD, DB_HOST, DB_PORT);
$db->execute(file_get_contents(DB_SETUP_FILE));
$db2 = new fDatabase(DB_TYPE, DB_2, DB_2_USERNAME, DB_2_PASSWORD, DB_2_HOST, DB_2_PORT);
$db2->execute(file_get_contents(DB_2_SETUP_FILE));
$this->sharedFixture = array($db, $db2);
fORMDatabase::attach($db);
fORMDatabase::attach($db2, 'db2');
fORM::mapClassToTable('Db2User', 'users');
fORM::mapClassToDatabase('Db2User', 'db2');
fORM::mapClassToTable('Db2Group', 'groups');
fORM::mapClassToDatabase('Db2Group', 'db2');
}
开发者ID:philip,项目名称:flourish,代码行数:17,代码来源:fRecordSetWithMultipleDatabasesTest.php
示例8: setUpBeforeClass
public static function setUpBeforeClass()
{
if (defined('SKIPPING')) {
return;
}
$db = new fDatabase(DB_TYPE, DB, DB_USERNAME, DB_PASSWORD, DB_HOST, DB_PORT);
$db->execute(file_get_contents(DB_SETUP_FILE));
$db2 = new fDatabase(DB_TYPE, DB_2, DB_2_USERNAME, DB_2_PASSWORD, DB_2_HOST, DB_2_PORT);
$db2->execute(file_get_contents(DB_2_SETUP_FILE));
self::$db = $db;
self::$db2 = $db2;
fORMDatabase::attach($db);
fORMDatabase::attach($db2, 'db2');
fORM::mapClassToTable('Db2User', 'users');
fORM::mapClassToDatabase('Db2User', 'db2');
fORM::mapClassToTable('Db2Group', 'groups');
fORM::mapClassToDatabase('Db2Group', 'db2');
}
开发者ID:netcarver,项目名称:flourish,代码行数:18,代码来源:fRecordSetWithMultipleDatabasesTest.php
示例9: setUp
public function setUp()
{
if (defined('SKIPPING')) {
$this->markTestSkipped();
}
$db = $this->sharedFixture['db'];
$db->execute(file_get_contents(DB_EXTENDED_SETUP_FILE));
$db->clearCache();
fORMDatabase::attach($db);
fORMSchema::attach($this->sharedFixture['schema']);
fORMOrdering::configureOrderingColumn('TopAlbum', 'position');
fORMOrdering::configureOrderingColumn('FavoriteAlbum', 'position');
fORMOrdering::configureOrderingColumn('YearFavoriteAlbum', 'position');
if (defined('MAP_TABLES')) {
fORM::mapClassToTable('User', 'user');
fORM::mapClassToTable('Group', 'group');
fORM::mapClassToTable('Artist', 'popular_artists');
fORM::mapClassToTable('Album', 'records');
}
}
开发者ID:philip,项目名称:flourish,代码行数:20,代码来源:fORMOrderingTest.php
示例10: setUpBeforeClass
public static function setUpBeforeClass()
{
if (defined('SKIPPING')) {
return;
}
$db = new fDatabase(DB_TYPE, DB, DB_USERNAME, DB_PASSWORD, DB_HOST, DB_PORT);
if (DB_TYPE == 'sqlite') {
$db->execute(file_get_contents(DB_SETUP_FILE));
$db->execute(file_get_contents(DB_EXTENDED_SETUP_FILE));
$db->execute(fix_schema(file_get_contents(DB_ALTERNATE_SCHEMA_SETUP_FILE)));
}
$db->execute(file_get_contents(DB_POPULATE_FILE));
$db->execute(file_get_contents(DB_EXTENDED_POPULATE_FILE));
$db->execute(fix_schema(file_get_contents(DB_ALTERNATE_SCHEMA_POPULATE_FILE)));
$db->clearCache();
fORMDatabase::attach($db);
self::$db = $db;
fORM::mapClassToTable('Flourish2User', fix_schema('flourish2.users'));
fORM::mapClassToTable('Flourish2Group', fix_schema('flourish2.groups'));
fORM::mapClassToTable('Flourish2Artist', fix_schema('flourish2.artists'));
fORM::mapClassToTable('Flourish2Album', fix_schema('flourish2.albums'));
}
开发者ID:nurulimamnotes,项目名称:flourish-old,代码行数:22,代码来源:fRecordSetWithMultipleSchemasTest.php
示例11: testBuildFromSQLNonLimitedCount
public function testBuildFromSQLNonLimitedCount()
{
$set = fRecordSet::buildFromSQL('User', sprintf("SELECT %s.* FROM %s LIMIT 2", fORM::tablize('User'), fORM::tablize('User')), sprintf("SELECT count(*) FROM %s", fORM::tablize('User')));
$this->assertEquals(array(1, 2), $set->getPrimaryKeys());
$this->assertEquals(4, $set->count(TRUE));
}
开发者ID:nurulimamnotes,项目名称:flourish-old,代码行数:6,代码来源:fRecordSetTest.php
示例12: validateManyToMany
/**
* Validates many-to-many related records
*
* @param string $class The class to validate the related records for
* @param string $related_class The name of the class for this record set
* @param string $route The route between the table and related table
* @param array $related_info The related info to validate
* @return array An array of validation messages
*/
private static function validateManyToMany($class, $related_class, $route, $related_info)
{
$related_record_name = self::getRelatedRecordName($class, $related_class, $route);
$record_number = 1;
$messages = array();
$related_records = $related_info['record_set'] ? $related_info['record_set'] : $related_info['primary_keys'];
foreach ($related_records as $record) {
if (is_object($record) && !$record->exists() || !$record) {
$messages[fORM::tablize($related_class)] = self::compose('%1$sPlease select a %2$s', fValidationException::formatField(self::compose('%1$s #%2$s', $related_record_name, $record_number)), $related_record_name);
}
$record_number++;
}
return $messages;
}
开发者ID:alandsidel,项目名称:flourish-classes,代码行数:23,代码来源:fORMRelated.php
示例13: validateTimezoneColumns
/**
* Validates all timestamp/timezone columns
*
* @internal
*
* @param fActiveRecord $object The fActiveRecord instance
* @param array &$values The current values
* @param array &$old_values The old values
* @param array &$related_records Any records related to this record
* @param array &$cache The cache array for the record
* @param array &$validation_messages An array of ordered validation messages
* @return void
*/
public static function validateTimezoneColumns($object, &$values, &$old_values, &$related_records, &$cache, &$validation_messages)
{
$class = get_class($object);
if (empty(self::$timezone_columns[$class])) {
return;
}
foreach (self::$timezone_columns[$class] as $timezone_column => $timestamp_column) {
if ($values[$timestamp_column] instanceof fTimestamp || $values[$timestamp_column] === NULL) {
continue;
}
if (!fTimestamp::isValidTimezone($values[$timezone_column])) {
$validation_messages[$timezone_column] = self::compose('%sThe timezone specified is invalid', fValidationException::formatField(fORM::getColumnName($class, $timezone_column)));
} else {
$validation_messages[$timestamp_column] = self::compose('%sPlease enter a date/time', fValidationException::formatField(fORM::getColumnName($class, $timestamp_column)));
}
}
}
开发者ID:alandsidel,项目名称:flourish-classes,代码行数:30,代码来源:fORMDate.php
示例14: extendRecordSetInfo
/**
* Overlays user data over info from the record set
*
* @param array $data The user data
* @param string|array $class The class or classes present in the record set
* @return array The merged data
*/
private static function extendRecordSetInfo($data, $class)
{
if (is_array($class)) {
$record_name = array_map(array('fORM', 'getRecordName'), $class);
} else {
$record_name = fORM::getRecordName($class);
}
return array_merge(array('class' => $class, 'record_name' => $record_name), $data);
}
开发者ID:alandsidel,项目名称:flourish-classes,代码行数:16,代码来源:fPagination.php
示例15: tossIfEmpty
/**
* Throws an fEmptySetException if the record set is empty
*
* @throws fEmptySetException When there are no record in the set
*
* @param string $message The message to use for the exception if there are no records in this set
* @return fRecordSet The record set object, to allow for method chaining
*/
public function tossIfEmpty($message = NULL)
{
if ($this->records) {
return $this;
}
if ($message === NULL) {
if (is_array($this->class)) {
$names = array_map(array('fORM', 'getRecordName'), $this->class);
$names = array_map(array('fGrammar', 'pluralize'), $names);
$name = join(', ', $names);
} else {
$name = fGrammar::pluralize(fORM::getRecordName($this->class));
}
$message = self::compose('No %s could be found', $name);
}
throw new fEmptySetException($message);
}
开发者ID:JhunCabas,项目名称:material-management,代码行数:25,代码来源:fRecordSet.php
示例16: __construct
protected function __construct()
{
$this->modelName = str_replace('_Query_', '_Model_', get_class($this));
$this->tableName = fORM::tablize($this->modelName);
$this->db = fORMDatabase::retrieve($this->modelName, 'read');
}
开发者ID:pmanterys,项目名称:wp-mw-newsletter,代码行数:6,代码来源:AbstractQuery.php
示例17: extend
/**
* Adds the method `toJSON()` to fActiveRecord and fRecordSet instances
*
* @return void
*/
public static function extend()
{
fORM::registerReflectCallback('*', self::reflect);
fORM::registerActiveRecordMethod('*', 'toJSON', self::toJSON);
fORM::registerRecordSetMethod('toJSON', self::toJSONRecordSet);
}
开发者ID:gopalgrover23,项目名称:flourish-classes,代码行数:11,代码来源:fORMJSON.php
示例18: validateMoneyColumns
/**
* Validates all money columns
*
* @internal
*
* @param fActiveRecord $object The fActiveRecord instance
* @param array &$values The current values
* @param array &$old_values The old values
* @param array &$related_records Any records related to this record
* @param array &$cache The cache array for the record
* @param array &$validation_messages An array of ordered validation messages
* @return void
*/
public static function validateMoneyColumns($object, &$values, &$old_values, &$related_records, &$cache, &$validation_messages)
{
$class = get_class($object);
if (empty(self::$money_columns[$class])) {
return;
}
foreach (self::$money_columns[$class] as $column => $currency_column) {
if ($values[$column] instanceof fMoney || $values[$column] === NULL) {
continue;
}
// Remove any previous validation warnings
unset($validation_messages[$column]);
$column_name = fValidationException::formatField(fORM::getColumnName($class, $currency_column));
if ($currency_column && !in_array($values[$currency_column], fMoney::getCurrencies())) {
$validation_messages[$column] = self::compose('%sThe currency specified is invalid', $column_name);
} else {
$validation_messages[$column] = self::compose('%sPlease enter a monetary value', $column_name);
}
}
}
开发者ID:hibble,项目名称:printmaster,代码行数:33,代码来源:fORMMoney.php
示例19: validate
/**
* Validates the values of the record against the database and any additional validation rules
*
* @throws fValidationException When the record, or one of the associated records, violates one of the validation rules for the class or can not be properly stored in the database
*
* @param boolean $return_messages If an array of validation messages should be returned instead of an exception being thrown
* @param boolean $remove_column_names If column names should be removed from the returned messages, leaving just the message itself
* @return void|array If $return_messages is TRUE, an array of validation messages will be returned
*/
public function validate($return_messages = FALSE, $remove_column_names = FALSE)
{
$class = get_class($this);
if (fORM::getActiveRecordMethod($class, 'validate')) {
return $this->__call('validate', array($return_messages));
}
$validation_messages = array();
fORM::callHookCallbacks($this, 'pre::validate()', $this->values, $this->old_values, $this->related_records, $this->cache, $validation_messages);
// Validate the local values
$local_validation_messages = fORMValidation::validate($this, $this->values, $this->old_values);
// Validate related records
$related_validation_messages = fORMValidation::validateRelated($this, $this->values, $this->related_records);
$validation_messages = array_merge($validation_messages, $local_validation_messages, $related_validation_messages);
fORM::callHookCallbacks($this, 'post::validate()', $this->values, $this->old_values, $this->related_records, $this->cache, $validation_messages);
$validation_messages = fORMValidation::replaceMessages($class, $validation_messages);
$validation_messages = fORMValidation::reorderMessages($class, $validation_messages);
if ($return_messages) {
if ($remove_column_names) {
$validation_messages = fValidationException::removeFieldNames($validation_messages);
}
return $validation_messages;
}
if (!empty($validation_messages)) {
throw new fValidationException('The following problems were found:', $validation_messages);
}
}
开发者ID:mrjwc,项目名称:printmaster,代码行数:35,代码来源:fActiveRecord.php
示例20: retrieve
/**
* Return the instance of the fSchema class
*
* @param string $class The class the object will be used with
* @return fSchema The schema instance
*/
public static function retrieve($class = 'fActiveRecord')
{
if (substr($class, 0, 5) == 'name:') {
$database_name = substr($class, 5);
} else {
$database_name = fORM::getDatabaseName($class);
}
if (!isset(self::$schema_objects[$database_name])) {
self::$schema_objects[$database_name] = new fSchema(fORMDatabase::retrieve($class));
}
return self::$schema_objects[$database_name];
}
开发者ID:philip,项目名称:flourish,代码行数:18,代码来源:fORMSchema.php
注:本文中的fORM类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论