Working on a patch for this now.

CommentFileSizeAuthor
#9 nodereference_deploy_418910_9.patch1.07 KBkatbailey
Support from Acquia helps fund testing for Drupal Acquia logo

Comments

danielb’s picture

theroyalorder’s picture

I am rather new here with all things Drupal, but a long story short:

We have a home page, the home page is a content type(template) lets say: "hompage_template".
The "home_page_template" is made up of other content types which you choose with list selectors (home_page_panel, home_ad, etc).
This part works and I realize has nothing to do with deploy, but I am getting to that part. Deploy works swimmingly for the sub content types (like the home_page_panel), make an update, deploy(push) it and it shows up on the "LIVE" site, but we have hit one snag.

The snag, when we deploy updates made to the "home_page_template" (the part where you actually select what you want to show up from the drop down lists), the changes never deploy to the "LIVE" server. The log always says everything was successful, but the changes never propagate.

These items, by the way, are all node references using CCK. Which is why I am posting this comment here, as it seems to fit the issue. I may be woefully wrong, but I have spent my whole day trying to debug this and I am out of ideas.

We have tried just about every method of deploying, including changing the input types to the auto-complete text fields (this had no effect). We tried setting up deployment plans that encompassed every aspect of the home page, including the templates and all the sub-templates, the specific nodes themselves as well as any and all of the nodes that could show up on the homepage, no go.

However, when a push was truly successful (meaning something on the "LIVE" home page changed). The "LIVE" sites home page template drop downs all get set to none. Which leads me to believe that a NULL is getting passed during the "push" for all of the CCK drop down options, but I am just guessing here.

On a side note, the sites are identical, with the same users and modules. We know that deploy is working since we can get most node content to change with out issue. It's the node reference, CCK, drop down selections that is throwing a wrench in the works.

So Kudos on the deploy module, it rocks, i guess it just needs to rock a little more or. What I think is more likely, I need to learn what we are doing wrong over here.

What has me boggled? Why does it work for everything except where we have drop downs and radio buttons?

Any help/advice would be greatly appreciated.

danielb’s picture

Drop downs and radio buttons are both handled by the optionwidgets module in cck, which handles possible options and default values itself.

theroyalorder’s picture

Thanx for the reply danielb.

I totally understand that the optionwidgets module handles the building of the element and what the possible values are for it.

I guess I am still not understanding how Deploy would change what is selected, I know that deploy isn't actually selecting anything, it's updating/adding to the DB, but I digress.

My question is more related to making selection changes to those optionwidgets items (selecting something else from the drop down), saving those changes then pushing the newly updated page to the "LIVE" server. This just doesn't seem to be happening and I want to rule out that we are doing something incorrectly. Perhaps there is a specific way you need to set this type of functionality up in order to get it to work?

Like I said previously, any and all help is greatly appreciated.

dixon_’s picture

I think this issue is more related to Services. The node service saves node with the drupal_execute() for many good reasons. But drupal_execute() depends on the Form API and the structure of the form widgets. And some form widgets are just not compatible with how Services work.

danielb’s picture

Well think about how optionwidgets form elements use arrays for defaults and options, whereas other types of form elements use a single value. It is possible that something is confusing null with an empty array, or something like that.

Anonymous’s picture

I'm not sure how closely related this issue is with the Blockreference issue, but I'm having the same issues as everybody else with Nodereference now as well: deployments fail silently unless you use the autocomplete widget. Now what's interesting is that I had to use the autocomplete widget on both the source and destination servers to get this to work, while I was able to get Blockreference working by just using the autocomplete widget on the destination server (I was able to use a select list on the source server).

theroyalorder: make sure you are using autocomplete on both your source and destination servers and it should work.

asak’s picture

Any progress on this... ?

katbailey’s picture

Status: Active » Needs review
FileSize
1.07 KB

Here's a patch that allows for deploying nodereferences with select lists...

dixon_’s picture

Issue tags: +beta blocker

This needs to be done before we roll a beta. I'll give this a review as soon as possible!

dixon_’s picture

Priority: Normal » Major
gdd’s picture

Status: Needs review » Fixed

Hey guess what, I reviewed and committed this patch. Amazing I know, maybe I can get another couple patches committed before another three months goes by!

Thanks katbailey for this.

Status: Fixed » Closed (fixed)
Issue tags: -beta blocker

Automatically closed -- issue fixed for 2 weeks with no activity.