Migrate Play!Framework 1.2.3 контроллер приложений до 2.0 - PullRequest
6 голосов
/ 23 декабря 2011

Из любопытства я хотел бы перенести Play! 1.2.3 Java-приложение для Play! 2.0, но у меня возникают трудности с пониманием нового контроллера приложений. Я рассмотрел три примера приложений, но они мне мало помогли, так как я не опытный программист. Вот урезанный пример того, как я сейчас подхожу к контроллеру приложений в Play! 1.2.3.

Классы Master и Detail:

@Entity
public class Master extends Model {
    public String name;
    public String address;
    @OneToMany(cascade=CascadeType.ALL,mappedBy="detailId")
    public List<Detail> details;
}

@Entity
public class Detail extends Model {
    public String pet;
    @JoinColumn(name="detail_id")
    @ManyToOne
    public Master detailId;
}

Класс приложения:

public class Application extends Controller {

    public static void master(Long id) {
        Master master = Master.findById(id);
        render(master);
    }

    public static void saveMaster(final Master master) {
        master.save();
    }

    public static void saveDetail(Long id, final Detail detail) {
        Master master = Master.findById(id);
        detail.detailId = master;
        detail.save();
        master.details.add(detail);
        master.save();
        master(id)
   }
}

Я знаю, что это далеко не элегантно, но работает, и мне легко следовать коду Я хотел бы сделать что-то похожее, используя новую среду, и любая помощь будет принята с благодарностью

1 Ответ

2 голосов
/ 08 февраля 2012

Вы можете использовать wiki в качестве ссылки.Новый контроллер будет выглядеть так:

public class Application extends Controller {

    public static Result master(Long id) {
        Master master = Master.findById(id);
        return ok(master);
    }

    ...
}
...