2012-03-01 35 views
6

Tôi có một Enum trong đó có lĩnh vực nào đó, mà tôi cần phải truy cập trong mẫu play1.2.4 tôilàm thế nào để truy cập vào các lĩnh vực Enum trong mẫu play framework

public Enum WORKER{ 
    FARMER,SMITH,GARDENER 
} 

Giả sử tôi cần phải kiểm tra xem một biến 'người' trong mẫu là một nông dân, thợ rèn hoặc người làm vườn, làm thế nào tôi có thể làm điều đó?

#{if person.Type==WORKER.FARMER} 
    ...do something... 
#{/if} 

Ở đây tôi được

NullPointerException : Cannot get property 'FARMER' on null object. 

Vì vậy, các mẫu không biết về Enum WORKER.Since một trường hợp mới có thể không được tạo ra cho Enum, làm thế nào tôi nên làm cho Enum sẵn cho các mẫu ?

+1

là gì 'Status'? enum của bạn được gọi là 'WORKER' – talnicolas

+0

xin lỗi..typo ... Dù sao, tôi con số nó ra .. Tôi đã thiếu tiền tố gói –

+0

Điều gì về trừu tượng đằng sau một phương pháp? Ví dụ 'worker.isFarmer()' – kdazzle

Trả lời

10

Sử dụng tên lớp tuyệt đối của enum trong mẫu. Ví dụ: nếu enum của bạn WORKER là trong gói model.myenums, các mẫu mã sẽ trông như thế này:

#{if person.Type == model.myenums.WORKER.FARMER} 
    ...do something... 
#{/if} 
Các vấn đề liên quan