Ask your Symfony questions! Pay money and get answers fast! Comodo Trusted Site Seal
Official PayPal Seal

Can not delete a tag using sfDoctrineActAsTaggable plugin Symfony

Symfony 1.4 and Doctrine. Using the sfDoctrineActAsTaggable plugin. Everything works great at first, I can add tags. However, if I try to delete a tag, I get:

Catchable fatal error: Argument 2 passed to sfOutputEscaperIteratorDecorator::__construct() must implement interface Traversable, none given, called in /home/lkrubner/dev/tastingnotes/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Table.php on line 301 and defined in /home/lkrubner/dev/tastingnotes/lib/vendor/symfony/lib/escaper/sfOutputEscaperIteratorDecorator.class.php on line 44

Fatal error: Call to a member function evictAll() on a non-object in /home/lkrubner/dev/tastingnotes/lib/vendor/symfony/lib/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Connection.php on line 1239

In settings.yml I have:

enabled_modules: [default, sfGuardGroup, sfGuardUser, sfGuardPermission, sfGuardAuth, sfAdminDash, taggableComplete]

The HTML of my form looks like:

<td COLSPAN="2">
<?php include_component('taggableComplete','tagWidget', array('object' => $form->getObject())) ?>

My form class starts off with:

actAs: { Taggable: ~ }
connection: doctrine
tableName: wine
type: integer(20)
fixed: false
unsigned: false
primary: true
autoincrement: true
type: integer(20)
fixed: false
unsigned: false
primary: false
notnull: true
autoincrement: false

When I first enabled this module it immediately had a conflict with jqueryUI. I fixed this by moving down the include statement for jquery UI beneath where the Javascript for this module is included. Right now in my layout.php file I have:

<link type="text/css" href="/js/jqueryui/css/ui-lightness/jquery-ui-1.8.7.custom.css" rel="Stylesheet" />
<script type="text/javascript" src="/js/jqueryui/js/jquery-1.4.4.min.js"></script>

<?php include_stylesheets() ?>
<?php include_javascripts() ?>

<script type="text/javascript" src="/js/jqueryui/js/jquery-ui-1.8.7.custom.min.js"></script>

Why would the delete function cause this error?

Answers (1)


Joan Teixidó answers:

But sure that doesn't delete the tag? I say this because it seems that you get an error on creating a view after the action do the job, no?


Lawrence Krubner comments:

No, if I start with these 3 tags:

* amazingness Remove
* goodness Remove
* reverent Remove

And I click "Remove" for "amazingness", I get a HTTP 200 OK response, but then I get this error, and the tag "amazingness" is still there.