承接 havvg/propel-uniquekey-instancepooling-behavior 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

havvg/propel-uniquekey-instancepooling-behavior

最新稳定版本:v0.9.2

Composer 安装命令:

composer require havvg/propel-uniquekey-instancepooling-behavior

包简介

The UniqueKeyInstancePoolingBehaviors adds additional instance pooling to findOne query methods operating on unique keys.

README 文档

README

Build Status

See the Propel documentation on how to install a third party behavior

Usage

Just add the following XML tag in your schema.xml file:

<behavior name="unique_key_instance_pooling" />

For example:

<database name="default" defaultIdMethod="native">
    <table name="user">
        <column name="id" type="integer" autoIncrement="true" primaryKey="true" />
        <column name="email" type="varchar" size="255" required="true" primaryString="true" />

        <behavior name="unique_key_instance_pooling" />

        <unique>
            <unique-column name="email" />
        </unique>
    </table>
</database>

The behavior will add two methods for each unique key:

  1. A static key generator; from the example this would be createUniquePoolingKeyForEmail. This method returns the key used when accessing the instances pool.

  2. The findOneByEmail method will be actually implemented. This method wraps the original method around instance pooling.

<?php

$email = 'mail@example.com';

/*
 * This retrieves the user from the database.
 * The hydrated object will be put into the instances pool under a special key.
 */
$user = UserQuery::create()->findOneByEmail($email);

// .. more code ..

/*
 * As this user is in the instances pool of the behavior,
 * the cached object will be returned without accessing the database.
 */
$user = UserQuery::create()->findOneByEmail($email);

统计信息

  • 总下载量: 58
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2013-01-31