Answer: Direct object - steak.
Explanation:
A direct object is a noun (or a noun phrase) which receives the action of the verb. In this case, 'steak' is a direct object, which receives the action of eating.
An indirect object is always placed between the verb and the direct object. For instance, in sentence: I gave John a ball, 'John' is an indirect object.
In the sentence given above (We ate steak for dinner), there is no indirect object. 'For dinner' is a prepositional phrase, and not an object.