1. You can either put all your values in your enum and store the string in
the database or 2. build a simple lookup table in the database containing
your enum values and create a relationship with your primary table. I would
recommend option 2. There would be no need for a value encoder then.

It would look something like this.

<t:select value="myObject.carType" t:model="carTypeModel"/>

@PageActivationContext
@Property
private MyObject myObject;

@Inject
private SelectModelFactory selectModelFactory;

public void onPrepare() {
    if(myObject == null) {
        myObject = new MyObject();
    }
}

public void onSuccess() {
    //save car object.
}

public SelectModel getCarTypeModel() {
    List<CarType> carTypes = your cartype query.
    return selectModelFactory.create(carTypes , "name");
}

@Entity
public class CarType {

    private String name;

}


On Thu, Oct 23, 2014 at 6:52 AM, Thiago H de Paula Figueiredo <
thiag...@gmail.com> wrote:

> On Thu, 23 Oct 2014 05:05:00 -0200, Chris Poulsen <mailingl...@nesluop.dk>
> wrote:
>
>  I don't know what you are trying to achieve, but you can always provide
>> your own select model, if you need something more flexible than what the
>> standard coercions provide. (if that was the question?)
>>
>
> That's correct, but I guess a ValueEncoder implementation will be needed
> too. Either way, mixing different object classes in a Select doesn't sound
> right . . .
>
> --
> Thiago H. de Paula Figueiredo
> Tapestry, Java and Hibernate consultant and developer
> http://machina.com.br
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tapestry.apache.org
> For additional commands, e-mail: users-h...@tapestry.apache.org
>
>


-- 
George Christman
www.CarDaddy.com
P.O. Box 735
Johnstown, New York

Reply via email to