'Returns the "correct" usage key value with the run filled in.'

@property
def full_usage_key(self):

    if (self.usage_key.run is None):
        return self.usage_key.replace(course_key=self.course_id)
    else:
        return self.usage_key
