我是凤凰城/ Elixir的新手,我正试图围绕变革集团.
我知道它包含一组用于创建或更新模型的更改.
我想知道的是,在将更改推送到数据库之前,是否以及如何修改更改.
我的用例如下:
由于不变性约束,我甚至不确定是否可以直接修改变更集,但我可以创建另一个变更集以插入仓库.
欢迎任何建议,并毫不犹豫地指出我可能正在做的不良做法或愚蠢的事情!
编辑以下评论:我正在寻找类似的东西:
defp put_specialty_array(changeset) do
case changeset do
%Ecto.Changeset{valid?: true, changes: %{specialty: spec}} ->
put_change(changeset, :specialty, String.split(spec, ","))
_ ->
changeset
end
end
Run Code Online (Sandbox Code Playgroud) 我已经定义了这样的服务:
angular.module('myApp').service('myService', [
'$rootScope',
...
...
Run Code Online (Sandbox Code Playgroud)
我希望我的服务只为新用户实例化(即今天user.createdAt>).
那么有没有办法有条件地注入我的服务或至少破坏我的服务,如果用户是旧的,没有任何副作用.