dongxia9620 2016-12-17 10:12
浏览 394
已采纳

如何在Laravel模型中呈现枚举表属性

I have a table which has a enum property, and I'm wondering how to present it in a Model class.

Actually, I'm building a Model class, for which I will create migrations simultaneously, and that migration than needs to create a table with enum property. So how to present that enum in Model since PHP doesn't have enum. I mean I don't exactly know how Laravel works (have just started with it), but I think you get me.

I've just heard some advice such as an enum being a great property to use, but I'll use it anyway. The database tables are preconditioned so I have to do it like that.

So how to do that?

  • 写回答

1条回答 默认 最新

  • doqrt26664 2016-12-17 22:41
    关注

    In my use case I need enum field for store gender and I use first character of each. following is way to create enum field inside migration.

    $table->enum('gender', ['m', 'f']);
    

    And whenever I want to store it in database I changed the value like below.

    $input['gender'] = strtolower($input['gender']) == 'male') ? 'm' : 'f';
    

    You need to small function before storing model.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?