【发布时间】:2018-04-01 09:04:09
【问题描述】:
Laravel 鼓励我们使用 snake_case,例如first_name,用于模型属性名称。特别是,当使用蛇形案例从类外部访问属性时,它会自动查找名为 getFirstNameAttribute 的访问器。
然而,当涉及到模型关系时,使用驼峰式似乎更自然。例如,如果一个体育场有多个接入点,那么stadium 类可能有一个accessPoints() 方法。我可以将此方法调用为属性 ($stadium->accessPoints) 以检索访问点列表,也可以将其调用为方法 ($stadium->accessPoints()) 以获取底层查询构建器的实例。
这与我通常处理命名约定的方式不同。我通常会使用相同的大小写(snake_case 或 camelCase)命名属性,而不管属性是如何实现的。
我现在正在着手一个大型 Laravel 项目。我应该坚持使用这两种不同的语法,还是可能会后悔?
【问题讨论】:
-
关系方法名使用 camelCase,属性使用snake_case。