gen
gen copied to clipboard
feat: support native SQL as custom fields
- [x] Do only one thing
- [x] Non breaking API changes
- [x] Tested
What did this pull request do?
support native SQL as custom fields
User Case Description
field.NewFieldRaw("if(column1=?,column2,column3)", "1")
field.NewFieldRaw("if(column1=?,column2,column3)", field.NewField("", "new_id"))
https://github.com/go-gorm/gen/issues/1212
When can this be merged?
anxious!
I need it.
@tr1v3r 急需此功能pr,能否合并发版?
@tr1v3r 急需此功能pr,能否合并发版?
作者直接忽视咱们
@tr1v3r 急需此功能pr,能否合并发版?
这个可能会引入SQL注入漏洞
@tr1v3r 急需此功能pr,能否合并发版?
这个可能会引入SQL注入漏洞
有道理,请教一下如果我需要使用sql原生的function应该怎么做呢?
@tr1v3r 急需此功能pr,能否合并发版?
这个可能会引入SQL注入漏洞
有道理,请教一下如果我需要使用sql原生的function应该怎么做呢?
原本的设计是使用动态SQL做:https://gorm.io/gen/dynamic_sql.html,
如果不想用这个但是一定要用一些raw function可以在特定场景调用UnderlyingDB().Raw()自己负责SQL的安全性进行查询
还有一种解决方案:NewFieldRaw -> NewUnsafeFieldRaw
明确声明Unsafe,安全性方面使用者自己保证
@tr1v3r 急需此功能pr,能否合并发版?
这个可能会引入SQL注入漏洞
有道理,请教一下如果我需要使用sql原生的function应该怎么做呢?
原本的设计是使用动态SQL做:https://gorm.io/gen/dynamic_sql.html, 如果不想用这个但是一定要用一些raw function可以在特定场景调用
UnderlyingDB().Raw()自己负责SQL的安全性进行查询
好的。多谢
还有一种解决方案:
NewFieldRaw->NewUnsafeFieldRaw明确声明Unsafe,安全性方面使用者自己保证
NewUnsafeFieldRaw请问这个函数在哪个包下面?
还有一种解决方案:
NewFieldRaw->NewUnsafeFieldRaw明确声明Unsafe,安全性方面使用者自己保证NewUnsafeFieldRaw请问这个函数在哪个包下面?
就是这个PR的,不过还没有改名,改名之后可以合入
- [x] Do only one thing
- [x] Non breaking API changes
- [x] Tested
What did this pull request do?
support native SQL as custom fields
User Case Description
field.NewFieldRaw("if(column1=?,column2,column3)", "1") field.NewFieldRaw("if(column1=?,column2,column3)", field.NewField("", "new_id"))
大佬,换个名字吧。这个PR等了个把月了 @mimicode
已经修改了
还有一种解决方案:
NewFieldRaw->NewUnsafeFieldRaw明确声明Unsafe,安全性方面使用者自己保证NewUnsafeFieldRaw请问这个函数在哪个包下面?
就是这个PR的,不过还没有改名,改名之后可以合入
已经修改函数名称和不安全提示
已经修改了
还有一种解决方案:
NewFieldRaw->NewUnsafeFieldRaw明确声明Unsafe,安全性方面使用者自己保证NewUnsafeFieldRaw请问这个函数在哪个包下面?
就是这个PR的,不过还没有改名,改名之后可以合入
已经修改函数名称和不安全提示
@tr1v3r 请知晓