推测对象功能缺失

时间:2015-02-11 21:38:43

标签: php propel

所以我在这个网站上工作,由另一位开发人员创建。它在Propel 1.6.9上运行。

在生成代码时,另一位开发人员设法生成我的笔记本电脑上未生成的函数。 BaseTableName.php文件中缺少这些函数。缺少的功能是:

  • GetByName方法
  • getByPosition
  • 指定者
  • setByName
  • setByPosition
  • fromArray

此外,在文件开头的注释中也存在差异。可能只是为了以防万一,其他开发人员生成的文件中缺少版本和生成日期/时间:

  

本课程由Propel 1.6.9自动生成:
   2015年2月11日星期三21:29:12

我想我可以将这些功能复制到包含自定义功能的父文件夹中的文件中。但我首先想知道我的代码生成是否存在问题。

这是schema.xml:

<?xml version="1.0"?>
<database name="onterechtbetaald">
  <table name="agency_costs" phpName="AgencyCosts">
    <column name="id" type="Integer" required="true" autoIncrement="true" primaryKey="true"/>
    <column name="user_id" type="INTEGER"/>
    <column name="name" type="Varchar" size="70"/>
    <column name="surname" type="Varchar" size="70"/>
    <column name="email" type="Varchar" size="70"/>
    <column name="telnr" type="Varchar" size="70"/>
    <column name="adres1" type="Varchar" size="70"/>
    <column name="adres2" type="Varchar" size="70"/>
    <column name="adres3" type="Varchar" size="70"/>
    <column name="adres4" type="Varchar" size="70"/>
    <column name="wadres1" type="Varchar" size="70"/>
    <column name="wadres2" type="Varchar" size="70"/>
    <column name="wadres3" type="Varchar" size="70"/>
    <column name="wadres4" type="Varchar" size="70"/>
    <column name="zelfstandig" type="Varchar" size="70"/>
    <column name="makelaar" type="Varchar" size="70"/>
    <column name="madres1" type="Varchar" size="70"/>
    <column name="madres2" type="Varchar" size="70"/>
    <column name="madres3" type="Varchar" size="70"/>
    <column name="madres4" type="Varchar" size="70"/>
    <column name="datumingang" type="Varchar" size="70"/>
    <column name="datumtekenen" type="Varchar" size="70"/>
    <column name="bedrag" type="Varchar" size="70"/>
    <column name="bankrek" type="Varchar" size="70"/>
    <column name="banknaam" type="Varchar" size="70"/>
    <column name="message" type="LongVarchar"/>
    <column name="message2" type="LongVarchar"/>
    <column name="message3" type="LongVarchar"/>
    <column name="machtiging" type="Varchar" size="70"/>
    <column name="percentage" type="Varchar" size="70"/>
    <column name="machtiging_ontvangen" type="Date"/>
    <column name="aanmaning_verzonden" type="Date"/>
    <column name="dagvaarding_verzonden" type="Date"/>
    <column name="factuur_nummer" type="Integer" />
    <column name="factuur_verzonden" type="Date"/>
    <column name="factuur_bedrag" type="Varchar" size="70"/>
    <column name="zaak_afgesloten" type="Date"/>
    <column name="schikking_bedrag" type="Decimal" size="14" scale="4"/>
    <column name="notice" type="LongVarchar"/>
    <column name="is_special" type="BOOLEAN"/>
    <unique name="IX_UQ_agency_costs_id">
      <unique-column name="id"/>
    </unique>
    <foreign-key foreignTable="users">
      <reference foreign="id" local="user_id"/>
    </foreign-key>
    <behavior name="timestampable"/>
  </table>
  <table name="file_meta" phpName="FileMeta">
    <column name="id" type="Integer" required="true" autoIncrement="true" primaryKey="true"/>
    <column name="case_id" type="Integer"/>
    <column name="title" type="Varchar" size="70"/>
    <column name="description" type="LongVarchar"/>
    <column name="path" type="LongVarchar"/>
    <column name="user_id" type="INTEGER"/>
    <unique name="IX_UQ_file_meta_id">
      <unique-column name="id"/>
    </unique>
    <foreign-key foreignTable="agency_costs">
      <reference foreign="id" local="case_id"/>
    </foreign-key>
    <foreign-key foreignTable="users">
      <reference foreign="id" local="user_id"/>
    </foreign-key>
    <behavior name="timestampable"/>
  </table>
  <table name="users" phpName="User" idMethod="native">
    <column name="id" type="INTEGER" required="true" autoIncrement="true" primaryKey="true" phpName="Id"/>
    <column name="username" type="VARCHAR" size="45" phpName="Username"/>
    <validator column="username">
      <rule name="required" message="Username is verplicht veld"/>
    </validator>
    <column name="email" type="VARCHAR" size="45" phpName="Email"/>
    <column name="password" type="VARCHAR" size="45" phpName="Password"/>
    <column name="rank" type="INTEGER" phpName="Rank"/>
    <column name="last_login" type="TIMESTAMP" phpName="LastLogin"/>
    <column name="phone" type="VARCHAR" size="45" phpName="Phone"/>
    <behavior name="timestampable"/>
    <behavior name="timestampable"/>
  </table>
</database>

这是build.properties:

propel.mysql.tableType = InnoDB
propel.database = mysql
propel.project = onterechtbetaald
propel.database.url = mysql:host=localhost;port=3306;dbname=xxx
propel.database.user = xxx

0 个答案:

没有答案