问题列表 - 第30288页

Haskell:如何在状态monad之上编写交互式解释器?

我们正在开发一个内部使用状态monad的模型文件系统.我们有一个类型类,其操作如下:

class Monad m => FS m where
  isDirectory  :: Path -> m Bool
  children     :: Path -> m [Path]
  ...
Run Code Online (Sandbox Code Playgroud)

我们正在努力一点点交互式解释,将提供类似的命令cd,ls,cat,等等.解释器中的操作可以这样写:

fsop :: FS m => Operation -> m Response
Run Code Online (Sandbox Code Playgroud)

定义OperationResponse不重要; 如果你愿意,把它们当作弦乐.

我试图解决的问题是在I/O monad中编写一个顶层循环来解释文件系统Operation并打印响应.如果IO是FS的一个实例(也就是说,如果我们直接使用IO monad),生活会很简单:我们可以写

loop :: Path -> IO ()
loop currentDir = do
        op <- getLine
        case read op of
          ChangeDir d -> loop d -- should test 'isDirectory d', but let's not
          Ls …
Run Code Online (Sandbox Code Playgroud)

monads interpreter haskell interactive state-monad

17
推荐指数
3
解决办法
2926
查看次数

ModelForm的Django TextField max_length验证

在验证ModelForm时,Django不尊重TextField模型字段的max_length属性.

所以我定义了一个继承自models.TextField的LimitedTextField,并添加了类似于models.CharField的验证位:

from django.core import validators

class LimitedTextField(models.TextField):
    def __init__(self, *args, **kwargs):
        super(LimitedTextField, self).__init__(*args, **kwargs)
        self.max_length = kwargs.get('max_length')
        if self.max_length:
            self.validators.append(validators.MaxLengthValidator(self.max_length))

    def formfield(self, **kwargs):
        defaults = {'max_length': self.max_length}
        defaults.update(kwargs)
        return super(LimitedTextField, self).formfield(**defaults)
Run Code Online (Sandbox Code Playgroud)

但这对ModelForm验证仍然没有影响.

我错过了什么?任何帮助深表感谢.

谢谢,

OMAT

django django-models django-forms django-validation

28
推荐指数
2
解决办法
3万
查看次数

如何使整个jqGrid禁用/只读

如何使整个jqGrid禁用/只读?

我有一个带有逻辑"编辑部分"的页面,当用户选择要编辑的内容时我会显示该页面,并在用户完成编辑(保存或取消)时隐藏.在显示编辑部分时,我禁用了页面上的其他几个元素.我想禁用他们点击jqGrid的能力,因此他们无法更改所选行,重新排序等.但我找不到一种方法来禁用/启用整个网格.

如果已经回答了这个问题,请道歉 - 其他问题似乎集中在仅禁用jqGrid中的某些行为.

编辑:最好,我想要一种不依赖于另一个第三方插件的方法.当然,他们没有错!但是我的客户对它们有一定程度的不情愿,所以使用纯粹的jQuery/jQueryUI/jqGrid解决方案我的生活会更容易一些.:)

asp.net jquery jquery-ui jqgrid

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

通过OleDB读取Excel文件时,DBNull在非空单元格中

我使用OleDB来读取Excel文件.其中一列具有"通用"格式,并且包含字母和值仅由数字组成的字符串.检索字符串值没有问题,但检索纯数值DBNull.

怎么解决?

我使用以下连接字符串打开Excel 2003文件(xls):

"Provider=Microsoft.Jet.OLEDB.4.0;
 Data Source=C:\\file.xls;
 Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\""
Run Code Online (Sandbox Code Playgroud)

c# oledb excel dbnull

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

ViewExpiredException显示在web.xml中的java.lang.Throwable错误页面中

我正在开发一个JSF Web应用程序,如果视图过期,我需要在其中显示"Session Expired"页面,但是所有其他页面都需要一个常规技术错误页面.当我触发异常时,应用程序仅进入技术错误页面.这是错误页面定义:

<error-page> 
    <exception-type>javax.faces.application.ViewExpiredException</exception-type> 
    <location>/jsps/utility/sessionExpired.jsp</location> 
</error-page> 
<error-page> 
    <exception-type>java.lang.Throwable</exception-type> 
    <location>/jsps/utility/technicalError.jsp</location> 
</error-page> 
<error-page>
    <error-code>500</error-code>
    <location>/jsps/utility/technicalError.jsp</location>
</error-page>
Run Code Online (Sandbox Code Playgroud)

我删除了technicalError.jsp错误页面元素,它工作正常,但当我把它们放回去时,我无法访问sessionExpired.jsp页面.如何告诉Web容器评估这些标记的顺序,以便出现正确的页面?谢谢.

jsf web.xml servlets custom-error-pages viewexpiredexception

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

UIPickerView reloadData

我正在更改组件(特别是组件的数量和颜色),在我称之为pickerOne的UIPickerView中,因此在进行更改后,我调用:

[pickerOne reloadData];
Run Code Online (Sandbox Code Playgroud)

它似乎工作得很好但是,我收到了一个编译警告:

warning: 'UIPickerView' may not respond to '-reloadData'
Run Code Online (Sandbox Code Playgroud)

虽然这似乎有效,但我还应该使用其他方法重新加载数据吗?

谢谢

iphone uipickerview

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

调整单元格的高度和宽度并在QTableWidget中加载图像

我想用正方形单元格制作一个8 * 8的桌子(一个棋盘)。现在,我有了制作表格的代码,但是不知道如何将单元格调整为正方形。

我也想将碎片图片放入单元格中。我该怎么办?

这是我的代码:

#include <QtGui/QApplication>
#include "mainwindow.h"
#include <QHBoxLayout>
#include <QTableWidget>

class Table : public QWidget
{
  public:
    Table(QWidget *parent = 0);

};


Table::Table(QWidget *parent)
    : QWidget(parent)
{
  QHBoxLayout *hbox = new QHBoxLayout(this);

  QTableWidget *table = new QTableWidget(8 , 8 , this);

  hbox->addWidget(table);
  setLayout(hbox);
}



int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    Table t;

    t.show();


    return a.exec();
}
Run Code Online (Sandbox Code Playgroud)

编辑:

如果有人也可以帮助我加载图像作为单元格的背景,将不胜感激!我使用此代码,并且编译器不会生成错误,但是程序无法运行。我认为问题出在table->item(0,0)。我应该先初始化吗?

QString fileName = "1.bmp";
QPixmap pic (fileName);

QIcon icon (pic);

table->item(0,0)->setIcon(icon);
Run Code Online (Sandbox Code Playgroud)

qt resize image cell qtablewidget

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

标准C的通用库?

是否有任何广为人知的标准C通用库.我正在考虑类似Boost的C++.

我找到了C POSIX库......还有其他吗?

c

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

是否可以将UPDATE中的RETURNING子句用作INSERT的查询子句的查询子句?

我试图在UPDATE语句中的UPDATE上使用PostgreSQL的RETURNING子句,并遇到麻烦。

Postgres允许在INSERT中使用查询子句,例如:

INSERT INTO films 
SELECT * FROM tmp_films WHERE date_prod < '2004-05-07';
Run Code Online (Sandbox Code Playgroud)

我想将UPDATE的RETURNING子句用作INSERT的查询子句,例如:

INSERT INTO user_status_history(status)
UPDATE user_status SET status = 'ACTIVE' WHERE status = 'DISABLED' RETURNING status
Run Code Online (Sandbox Code Playgroud)

我可以找到的所有Postgres参考文献都建议RETURNING子句的行为与SELECT子句完全相同,但是当我运行上述代码时,我得到以下信息:

错误:“ UPDATE”或附近的语法错误

第2行:更新user_statuses

尽管能够执行以上查询的UPDATE部分而没有错误。

是否可以将UPDATE中的RETURNING子句用作INSERT的查询子句的查询子句?

目标是如果可能的话,更新一个表并通过单个查询插入另一个表。

postgresql

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

在TableViewCell上添加自定义操作:@selector到UISwitch

我有TableCellViewController来管理我的UITableView中的单元格.每个单元格都有一个标签na UISwitch(dictTypeSwitch).想要分配方法来切换事件,这样我就可以保存按钮的状态.

到目前为止我已经这样做了:

将setState函数赋给object:

[cell.dictTypeSwitch addTarget:self action:@selector(setState:) forControlEvents:UIControlEventTouchUpInside];
Run Code Online (Sandbox Code Playgroud)

处理事件的功能:

- (void)setState:(id)sender {
    BOOL state = [sender isOn];
    NSString *rez = state == YES ? @"YES" : @"NO";
    NSLog(rez);
}
Run Code Online (Sandbox Code Playgroud)

从发件人我得到UISwitch对象,我可以从中获得状态.

到目前为止一切都很好.

但是如果我想保存UISwitch的状态,我必须得到这个单元格的rowIndex.我怎样才能做到这一点?

The cells are made inside function cellForRowAtIndexPath. Se the code bellow:

// Customize the appearance of table view cells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"DictionariesTableCellViewController";
    DictionariesTableCellViewController *cell = (DictionariesTableCellViewController *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] …
Run Code Online (Sandbox Code Playgroud)

iphone action selector uitableview uiswitch

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