Parenting Objects

Can someone please explain to me how parenting objects works?
Is it best to use Constraints --> Child of, or is there a better way?
In using constraints there are options to constrain it by all axis for location, rotation and scale. But I don’t understand how that works because when I check one of those boxes, particularly for scale I do not get the expected results.
I would like to be able to move or scale one object with the other one adjusting accordingly to maintain the relationship.

If you need more information I’d be happy to supply it.

Thanks!

Select Object B (and C, D, E, etc.), then Object A. (Object A, the last object you select, will always be the parent)

Do: Ctrl-P to get the parenting context menu

Select either “Object” or “Object (Keep Transform)”

The difference between the two parenting options must be subtle because I don’t see what it is, quite frankly.

Parenting with constraint, Child of, gives you more option when animating. You have option to control parents’ influence over the child. It is typically used for animating character picking up or dropping an object, a child.

Okay, thanks, I get that now.
but can someone tell me why if I change the local Y value of the parent object it changes the Z value of the child? And why does the location change but under the Transform panel, the location says its the same? It very clearly is not. I don’t understand how this works.

If you apply rotation (Object menu -> Apply -> Rotation) before animating, that should clear up the axis confusion. If I’m understanding your second question, applying rotation should clear that up as well.