小编Joe*_*Dyk的帖子

更改其他视图中使用的列的类型

create table base (name character varying(255));                                                                                                                                                        
create view v1 as select *, now() from base;                                                        
create view v2 as select * from v1 where name = 'joe';
alter table base alter column name type text;                                                       
Run Code Online (Sandbox Code Playgroud)

给出了这个错误:

cannot alter type of a column used by a view or rule
DETAIL:  rule _RETURN on view v1 depends on column "name"
Run Code Online (Sandbox Code Playgroud)

这有点烦人,因为现在我必须重新创建引用该base.name列的所有视图.当我有引用其他视图的视图时,这尤其令人讨厌.

我希望能够做的是:

select recreate_views('v1', 'v2', 'alter table base alter column name type text');
Run Code Online (Sandbox Code Playgroud)

并让函数获取v1和v2的视图定义,删除它们,运行指定的代码,然后重新创建v1和v2.如果我可以使用Ruby,我可能会使用函数/ block/lambda,就像

recreate_views 'v1', 'v2' do
  alter …
Run Code Online (Sandbox Code Playgroud)

postgresql views

6
推荐指数
1
解决办法
7859
查看次数

Rails SSL要求插件 - 在重定向到https之前,不应检查您是否处于生产模式?

看一下ssl_requirement插件.

它不应该检查你是否处于生产模式?我们看到在开发模式下重定向到https,这似乎很奇怪.或者这是插件的正常行为?我认为它过去的表现不同.

ssl https ruby-on-rails

4
推荐指数
1
解决办法
4093
查看次数

ZPL 编程 - 重置每个打印作业的设置

Zebra ZPL 标签打印机将打印命令从一个打印作业传递到另一个打印作业。因此,如果您发送^FWR旋转标签的命令,则以后的所有作业都将旋转,因此^FWN如果您希望以纵向模式打印下一个标签,则必须将方向重置为。

有没有办法在每个打印作业上自动重置 Zebra 上的“标准”设置?那么上一个作业的设置不会延续到下一个作业吗?我希望发送到打印机的每个 zpl 文件都能以完全相同的方式打印,无论之前打印了什么。

或者我可以发送一组默认命令来重置方向、字体、位置、dpi、测量值等?

有一个命令可以执行开机/恢复出厂设置,但我不想在每个标签打印上都执行此操作。

zpl-ii zpl zebra-printers

2
推荐指数
1
解决办法
6825
查看次数

避免重复的QuickCheck属性

我开始通过解决99个Haskell问题来学习Haskell. http://www.haskell.org/haskellwiki/H-99:_Ninety-Nine_Haskell_Problems 我想使用quickcheck为每个程序/函数编写测试.

我有以下代码:

import Test.QuickCheck
import Text.Printf

main  = mapM_ (\(s,a) -> printf "%-25s: " s >> a) tests

-- 1
myLast  lst = last lst
prop_1a xs x = myLast  (xs ++ [x]) == (x::String)

myLast' = head . reverse
prop_1b xs x = myLast' (xs ++ [x]) == (x::String)

tests  = [("1a",                 quickCheck prop_1a)
         ,("1b",                 quickCheck prop_1b)
         ]

我可能会写myLast'',myLast'''等等.有没有办法可以测试所有这些方法,而无需重复代码和快速检查属性?

相关问题:现在,我正在快速检查使用字符串.有没有办法随机使用不同类型进行测试?

haskell quickcheck

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