Doctrine Project

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What’s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
Doctrine 1
  • Doctrine 1
  • DC-514

cascading behaviors

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Critical Critical
  • Resolution: Invalid
  • Affects Version/s: 1.1.4, 1.1.5, 1.1.6, 1.2.0, 1.2.1
  • Fix Version/s: None
  • Component/s: Behaviors, Record
  • Labels:
    None

Description

If you want to add a behavior to a behavior, you (depending on your template) can get an error message telling you, that the _table property is not an object.

This happens, as actAs() method of Record_Abstract does first the $tpl->setUp() call and then the $tpl->setTableDefnition(), as for the cascading templates - which are using Record_Generator - the $child->setTableDefinition() is called before $child->setUp() in method buildChildDefinitions(). Switching those two lines fixes the error and has, as far we can see (having it in our production system for quite a while now) no side effects besides fixing the error.

Activity

  • All
  • Comments
  • History
  • Activity
  • Source
Hide
Permalink
Jonathan H. Wage added a comment - 01/Mar/10 4:00 PM

Hi, when providing feedback and you have a change, it is best to provide a patch. Can you generate a patch for your changes and attach it to the ticket?

However, if I understand your verbal description of the change correctly, it is not right. We can't call setUp() first, because setTableDefinition() is supposed to be called first. This is how it is supposed to work.

Show
Jonathan H. Wage added a comment - 01/Mar/10 4:00 PM Hi, when providing feedback and you have a change, it is best to provide a patch. Can you generate a patch for your changes and attach it to the ticket? However, if I understand your verbal description of the change correctly, it is not right. We can't call setUp() first, because setTableDefinition() is supposed to be called first. This is how it is supposed to work.

People

  • Assignee:
    Jonathan H. Wage
    Reporter:
    Andreas Wissl
Vote (0)
Watch (1)

Dates

  • Created:
    22/Feb/10 11:41 AM
    Updated:
    15/Mar/10 12:17 PM
    Resolved:
    15/Mar/10 12:17 PM
  • Atlassian JIRA (v5.2.7#850-sha1:b2af0c8)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Doctrine Project. Try JIRA - bug tracking software for your team.