标签: rules

使用规则插入辅助表自动递增序列

要在第二个表中自动添加列以通过唯一索引将其绑定到第一个表,我有一个如下规则:

CREATE OR REPLACE RULE auto_insert AS ON INSERT TO user DO ALSO
INSERT INTO lastlogin (id) VALUES (NEW.userid);
Run Code Online (Sandbox Code Playgroud)

如果user.userid是一个整数,这可以正常工作.但是,如果它是一个序列(例如,类型为serialbigserial),那么插入到lastlogin表中的是下一个序列id.所以这个命令:

INSERT INTO user (username) VALUES ('john');
Run Code Online (Sandbox Code Playgroud)

将列[1,'john',...]插入用户,但将列[2,...]插入lastlogin.以下2个解决方法确实有效,但第二个解决方案消耗了两倍的序列号,因为序列仍然是自动递增的:

CREATE OR REPLACE RULE auto_insert AS ON INSERT TO user DO ALSO
INSERT INTO lastlogin (id) VALUES (lastval());

CREATE OR REPLACE RULE auto_insert AS ON INSERT TO user DO ALSO
INSERT INTO lastlogin (id) VALUES (NEW.userid-1);
Run Code Online (Sandbox Code Playgroud)

不幸的是,如果我插入多行,解决方法不起作用:

INSERT INTO user (username) …
Run Code Online (Sandbox Code Playgroud)

postgresql rules

5
推荐指数
1
解决办法
3849
查看次数

Visual C++ 2010的Lazy C++(LZZ)规则文件

有没有人为Visual C++ 2010制作了LZZ规则文件,这样你就可以将.lzz文件添加到项目中并在不看中间.cpp和.h文件的情况下编译?

lazy-c++ rules visual-studio-2010

5
推荐指数
1
解决办法
805
查看次数

坚持流口水知识会议

是否可以在Drools中保留知识讲座?如果是这样,怎么办?我将事实存储在数据库中,因此我希望避免在每次添加新事实时在新会话中重新加载所有事实。目前,当有新事实时,该事实存储在数据库中,然后调用Drools:它在其会话中加载所有事实,然后触发规则。通话之间会话丢失。

jboss persistence rules drools jbpm

5
推荐指数
1
解决办法
3138
查看次数

ICU是iOS上的私有框架吗?

ICU被认为是Apple 的私人框架吗?我不清楚头文件是否$SDK/usr/include/是私有的.我想使用像u_strcasecmpfrom 这样的函数<unicode/ustring.h>.

头文件存在,所以我假设它不是真的私有.另一方面,我找不到Apple在其API 参考中记录任何ICU功能.

iphone rules icu ios

5
推荐指数
1
解决办法
1771
查看次数

TFS工作项 - 仅当System.AttachedFileCount> 0时才允许转换到状态

是否可以不必创建自定义控件?

我需要允许更改自定义工作项的状态,只要它至少附加了一个文件.附件控件的System.AttachedFileCount字段不支持"REQUIRED":我想将其用作转换的条件.

我试图通过添加一个自定义字段来解决这个问题,该字段仅用于复制System.AttachedCount中的值.
我在自定义字段中设置规则"COPY",以便复制工作项的附件数量.然后我可以使用规则"PROHIBITEDVALUES"= 0检查转换或状态中自定义字段的值.这可能是一种解决方法,但问题是它无法在同一状态内工作:如果我编辑工作项而不更改状态并添加一些附件,自定义字段的值不会更改.

还有其他一些规则需要尝试吗?

tfs workitem rules tfs2010 tfs-workitem

5
推荐指数
1
解决办法
2643
查看次数

如何建模独占行为并使其可配置

我们必须提供具有以下规则的选项列表

* you can select multiple items, as many as you want
* however, some of the items are mutually exclusive, i.e. selecting itemA should automatically deselects itemC ( if itemC is selected prviously )
Run Code Online (Sandbox Code Playgroud)

最好用以下列出的汽车油箱列表示例进行说明

Gas
Diesel
Electric
BioFuel
Ethanol
Run Code Online (Sandbox Code Playgroud)

汽车可以选择多种燃料类型,例如

biofuel and Gas 
Gas and Electric
Gas, Ethanol and Biofuel

but not 
Diesel and Gas at the same time
Run Code Online (Sandbox Code Playgroud)

尝试提出一些可配置的逻辑,以便代码读取配置并应用规则而不是了解具体的esp.因为有另一个列表具有类似的约束

有关如何建模此行为的任何帮助/指示?

更新 -

感谢大家的好主意,最简单的解决方案似乎在配置文件/表中为每种燃料类型定义了一个不兼容类型列表,如下所示

FuelID/FuelName/IncompatibleTypes 1/Gas/2 2/Diesel/1 3/Electric/4/BioFuel/5/Ethanol/etc.

其中IncomatibleTypes是nvarchar(50),它将存储不兼容的类型,如2,5,6,......等.

因此代码将读取定义,如果选择了一个项目,它将读取其他所选项目,如果它在不可用列表中找到任何内容,它可以显示消息或只是自动取消选择其他不兼容项目等.

这可能是不优雅的,但似乎是最通用的解决方案,没有代码知道任何关于特定项目的东西,而且它可以像现实中一样自由扩展*如果不可能性列表增加了,最多可能会有十几个最大选择*可以将存储更改为nvarchar(100)而不对代码本身进行任何更改

.net c# logic rules

5
推荐指数
1
解决办法
144
查看次数

laravel:验证前清理请求数据

有一个UpdateUserRequest表单请求,它根据在rulesmathod中定义的规则验证字段值.默认情况下,它具有rules()和authorize()方法.我想阻止验证和更新空字段(如密码).

sometimes在规则中使用是没有用的,因为html输入将出现在POST请求中,即使它们是空的.

array:6 [?
 "_method" => "PATCH"
 "_token" => "Cz79rRez2f6MG0tTU17nVwXD0X1lNGH1hA7OORjm"
 "name" => "john"
 "email" => "mymail@gmail.com"
 "password" => ""
 "password_confirmation" => ""

]
Run Code Online (Sandbox Code Playgroud)

所以我应该在使用sometimes规则之前删除POST请求的空键.
问题是:清除Request数组的最佳位置在哪里?
是否有任何laravel构建方法来管理这种情况?

PS:解决方法:
@Bogdon解决方案仍然有效工作,但还有另一种古朴,美观大方,利落从采用的解决方案在这里:
只是覆盖all()形式要求内部方法

 class RegistrationRequest extends Request
  {

...

public function all()
{
    $attributes = parent::all();

    if(isset($attributes['password']) && empty($attributes['password'])) 
        {
            unset($attributes['password']);
        }
    $this->replace($attributes);

    return parent::all();

}

...

}
Run Code Online (Sandbox Code Playgroud)

validation rules request laravel

5
推荐指数
1
解决办法
2071
查看次数

使用逻辑运算符进行Laravel表单验证

当用户填写消息(textarea)时,他/她无法填写日期,时间,地点值.
只有当Message为空且所有这三个字段都被填充时,这三个字段才会考虑.
如何使用Laravel表单验证执行此操作?是否可以在Request的规则方法中定义这些逻辑?
我是Laravel的新手.
提前致谢

这是我的表格

forms validation rules request laravel-5.2

5
推荐指数
1
解决办法
873
查看次数

Firebase规则:仅允许特定URL?

首先,对不起我的英语不好。

我有一个Firebase实时数据库。
而且我的网站有一个“喜欢”按钮应用程序。

但是我的数据库并不安全,因为每个人都可以写入我的数据库。
我想要的是:“只允许来自我的网站的传入数据。并阻止来自其他网站的传入”

例如:

{
  "rules": {
    ".read": true,
    ".write": allow only incoming data from "www.example.com" and block incoming from other sites
  }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?或者如何在Firebase控制台上设置此规则?
请帮忙。谢谢。

rules firebase

5
推荐指数
1
解决办法
580
查看次数

如何将文件写入当前目录而不是打包

我有以下目录结构:

my_dir
|
 --> src
|    |
|     --> foo.cc
|     --> BUILD
|
 --> WORKSPACE
|
 --> bazel-out/ (symlink)
| 
| ...
Run Code Online (Sandbox Code Playgroud)

src/BUILD 包含以下代码:

cc_binary(
    name = "foo",
    srcs = ["foo.cc"]
)
Run Code Online (Sandbox Code Playgroud)

该文件使用实用程序使用常规方式foo.cc创建一个命名文件。bar.txt<fstream>

但是,当我调用Bazel时,bazel run //src:foobar.txt创建并放置文件,bazel-out/darwin-fastbuild/bin/src/foo.runfiles/foo/bar.txt而不是将其放置在my_dir/src/bar.txt原始源所在的位置。

我尝试将一个outs字段添加到foo规则中,但是Bazel抱怨这outs不是的公认属性cc_binary

我还考虑过创建filegroup规则,但是没有deps字段可以声明foo为这些文件的依赖项。

如何确定cc_binary放置规则所生成的文件my_dir/src/bar.txt而不是bazel-out/...

c++ file-io rules output bazel

5
推荐指数
1
解决办法
1908
查看次数