OK sure, I agree that having the assignment buried in the statement is not obvious.  

I'll update with something similar to the previous method you suggest.  As this code results in an extra db looking up.  i.e. 
'''
::Hostgroup.find_by_id(@deployment.child_hostgroups.deploy_order.first)
'''