Publisher does not support the Fluid field type. Please do not contact asking when support will be available.

If you purchased an add-on from expressionengine.com, be sure to visit boldminded.com/claim to add the license to your account here on boldminded.com.

Ticket: White screen/PHP Error after installation, error mentions missing relationship table.

Status Resolved
Add-on / Version Publisher Lite 1.0.12
Severity Critical
EE Version 2.7.2

Christopher Kennedy

Oct 09, 2013

I just attempted to install Publisher Lite at a client’s request on EE 2.7.0 (originally) and when I did, I was met with the following error upon install:

A Database Error Occurred
Error Number: 1146
Table 'myodb.exp_relationships' doesn't exist
SELECT * FROM (`exp_relationships`)
Filename: third_party/publisher/models/publisher_relationship_relationship.php
Line Number: 55

Upgrading to 2.7.2 did nothing to solve the issue, either.

It’s definitely true that I don’t have an exp_relationships table, but this is a stock build from 2.7.0, so I’m not sure what’s getting in the way.

#1

BoldMinded (Brian)

Is the relationship field enabled/installed?

#2

BoldMinded (Brian)

Should be an easy fix. Go to that file and update the install() method to look like this:

public function install_move_data()
    {
        if (ee()->db->table_exists('relationships')) 
        {
            $qry = ee()->db->get('relationships');
            
            if ($qry->num_rows())
            {
                foreach ($qry->result_array() as $row)
                {
                    $data = $row;
                    $data['publisher_lang_id']   = $this->default_language_id;
                    $data['publisher_status']    = ee()->publisher_setting->get('default_view_status');
                    
                    $this->insert_or_update('publisher_relationships', $data, $row);
                }
            }
        }
    }
#3

Christopher Kennedy

No, is it required that it be? If so, that seems like an easy fix. I just disable the default relationship field because the client uses Playa, and I try to keep them from getting confused when setting up new fields (if they have to).

#4

Christopher Kennedy

Great. Thanks a lot!

Login to reply