Updating A Value In A Field Collection

No replies
Last seen: 8 years 1 week ago
Joined: 2013-03-27

Hello All --

Recently joined BuildAModule as I'll be attending Chris's training at DrupalCon.

I'm working on a module that I want eventually to do two things - update a field in a field collection and execute a SQL query against an external database.

For now, I'm concentrating on the first part - updating a field within an established field collection.

I have a Tickets Content Type. Within Tickets, I have field collection field_ticket_fields. Within that, I have a field Ticket Status, a selectable text list via Drop Down. When a new entry is created, Ticket Status is populated with ToBeBilled.

I'm trying to programatically update the Ticket Status to one of my other options from my drop down.

I've read that I should be able to edit and resave the value using the Entity API. If I understand it correctly it shouldn't take much to do.

So far, I have:

$wrapper = entity_metadata_wrapper('node', $node);
$wrapper->field_ticket_fields->field_ticket_status->value = 'Billed';

If I print the value to the screen before I save, I see ToBeBilled. If I print to screen a second time after save, I see Billed. However, when I go to the node I edited, the original value is still there.

What am I missing? Any assistance would be appreciated.

Thank you!

-- Chris

Add to playlist

Add to , or

Add to new playlist:

Add to playlist
This is a member-only feature
But, it's easy to become a member

Add to cart:

Contact us

Below are the supported keyboard shortcuts for our video player.

Start / stop video
Go to next video
Go to previous video
Increase or decrease player speed by 20%
Skip ahead or go back by 15 seconds
Jump to a percentage (2 is 20%, for example)
Toggle full screen
Videos Pricing More Search
BuildAModule Logo Icon BuildAModule Logo Icon
Become a member!
1 month
6 months
10% off
12 months
20% off
All memberships come with the following:
24 / 7 access to the entire 1800+ video library
An innovative video player with a rolling transcript
Extensive Drupal and cross-platform training
A thorough and thoughtful training style
Progress tracking
Take notes on specific video sections
Intuitive multi-user management
How many users?
Go solo with a single user, or give multiple team members access through one account and get discounts by bundling multiple users into a single membership.