Прежде всего, вам действительно нужно ввести переменные, например:
var rating:String = e.target.name;
Это делает код намного проще для чтения и понимания.
Во-вторых, я не уверен, что вам нужен getDefinitionByName, если Content.RatingContainer является DisplayObject, вы можете получить доступ к спрайту рейтинга следующим образом:
Content.RatingContainer["Rating" + e.target.name]
Проблема с кодом заключается в том, что вы объединяете e.target.name в «Rating», поэтому вы действительно ищете спрайт с именем «RatingRating0», например.
Похоже, что должно быть:
detailContent.RatingContainer.getDefinitionByName("Rating"+rating).addChild(star);
, поскольку рейтинг - это идентификатор, который вы добавили в конце имен спрайтов на сцене.