在AstroZero脚本中执行sql语句时,可以不用@useObject修饰数据对象吗?
场景描述
在脚本中执行“db.sql().execute()”时使用了下图提供的方法,即动态使用数据对象。
例如:使用db.dynamicObject("User")就不用@useObject(['User'])了,而db.sql().execute("SELECT * FROM User")还是要用@useObject(['User']),否则会报错。
解决方法
dynamicObject方法的应用场景是在不明确是操作哪个对象表的情况下,例如以参数的形式,从外部赋值,而不是确定的表名。db.object是用于操作对象表确定的情况下,所以需要使用@useObject进行声明,请参考下图。