问题标签 [declarative]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5279 浏览

image - 使用 gwt 和 ui-binder 更改悬停时的图像

我正在使用向页面添加图像的声明性/ui-binder 方法。这与使用ImageBundleGWT 提供的功能相结合。

当我将鼠标悬停在图像上时,我想做的是改变图像。我的问题是:最好的方法是什么,我目前的方法首先是最好的方法吗?

我的代码看起来类似于:

然后ImageBundle通过AbstractImagePrototype.

然后,在我的主处理程序中,我有类似的东西:

假设当用户将鼠标悬停在 image1 上时,我想用 image2 替换 image1(并在指针离开图像时将 image1 放回原处)。我要替换 image1 对象吗?我对该图像使用 setUrl 函数吗?我要创建一个全新的图像,然后使用水平面板的添加/删除功能来添加它吗?这似乎非常低效。我什至不需要一个ImageBundle;我可以通过类似的方式添加图像<g:Image .... url='path/to/image1.png' />,然后使用 CSS 和悬停属性来换出图像吗?

一些指导会很棒。GWT 文档在这方面严重缺乏。谢谢。

0 投票
1 回答
593 浏览

nhibernate - 使用 Spring 和 Hibernate 对两个数据库实例使用声明性事务管理

我正在寻找一种解决方案,使用 Spring (V1.3.2) 和 NHibernate (V3.2.0) 以及 Spring 的声明式事务管理来与两个独立的 SQLite 数据库实例进行通信。

目前我可以读写两个数据库实例,但事务管理只适用于一个数据库(DbProvider_DB1)。

“为什么”对我来说很清楚,但是如何对两个数据库使用声明性事务管理?我需要两个事务管理器吗?如果是,我该如何定义第二个并使用它?

这是我的配置,没什么奇怪的,但为了完整起见:


道.xml


谢谢

0 投票
2 回答
1243 浏览

python - 声明式 GTK

TL;DR:是否有使用 GTK 创建声明式 UI 的库?最好有 Python 支持。


我是一名 Python/Django 开发人员,我对用户界面的大部分经验来自网络,其中声明性、松散耦合的 UI 设计是标准的。最近,我不得不为一个学校项目使用 Java/Swing 创建一个 GUI 应用程序,并最终使用SwiXML为该项目创建声明性 Swing 布局。

我问自己是否有类似的可能性用于 Python。我不是很喜欢 Java,所以我不会开始开发 Swing 应用程序。在寻找 Python GUI Toolkits 时,我最终得出结论,该领域的三个主要参与者是 GTK、QT 和 Wx。

在这 3 个中,我更喜欢 GTK,但我找不到任何使用 GTK 创建声明性 UI 的方法。根据我在 HTML 和 SwiXML 方面的经验,我发现基于代码的 UI 创建非常混乱,我宁愿不必那样做。声明式 UI 更加灵活且耦合更松散。

是否有使用 GTK 创建声明性 UI 的库?最好有 Python 支持。

如果没有这样的东西(我假设,因为我找不到任何东西),我可能最终会开始使用 QT,即使我不喜欢它在 Linux 下的默认外观。(但也许这也是可定制的,在某种程度上它看起来类似于 GTK。)

0 投票
3 回答
5726 浏览

python - 使用 SQLAlchemy 从 MySQL 获取最后插入的值

我刚刚遇到了一个相当棘手的问题,经过测试,我发现没有一个可用的答案是足够的。

我已经看到了各种建议,但似乎没有一个能够返回 MySQL 中 auto_increment 字段的最后插入值。

我见过提到使用 session.flush() 添加记录然后检索 id 的示例。然而,这似乎总是返回 0。

我还看到提到使用 session.refresh() 但引发以下错误的示例: InvalidRequestError: Could not refresh instance ''

我正在尝试做的事情似乎非常简单,但我似乎无法弄清楚其中的秘密。

我正在使用声明性方法。

所以,我的代码看起来像这样:

至此,对象 f 已经被推送到 DB,并被自动分配了唯一的主键 id。但是,我似乎无法找到一种方法来获取在某些附加操作中使用的值。我想做以下事情:

my_new_id = f.ModelID

我知道我可以简单地执行另一个查询来根据其他参数查找 ModelID,但如果可能的话,我不希望这样做。

我将非常感谢任何对此问题的解决方案的见解。

我在这里先向您的帮助表示感谢。

0 投票
1 回答
675 浏览

spring - Spring声明性事务不回滚

我创建了一个简单的 Spring 应用程序来测试 Spring 声明式事务的基础知识。根据规则,声明性事务应在 RuntimeException 的情况下回滚。但就我而言,它并没有回滚。

主要测试类有代码

TrxHandleAnnotated 类有代码:-

并且在配置 XML 中有必要的配置。

我期待在抛出异常时回滚事务。但它没有回滚,并且记录被提交给 DB。

即使在互联网上进行了长时间搜索,我也无法理解为什么它没有被回滚。

后来我意识到,在 doTask() 代码中,我再次创建了上下文并将我们的 JdbcTemplate 实例从新的上下文中取出。这是问题的根本原因。

我更改了代码,使两个类都使用一些上下文。它奏效了!

这对我来说是一个教训,除非另有要求,否则整个应用程序应该只使用一个上下文对象。

这听起来太明显了 Spring 从业者,但像我这样的 Spring 新手会犯这种愚蠢的错误。于是想到分享。

在这种特殊情况下,最好将其声明为成员变量并使用 setter 注入,而不是手动创建 JdbcTemplate。

0 投票
1 回答
155 浏览

declarative - 函数递归,在 SAS 中发生了什么?

我有这种情况:递归过程(或函数)被称为

C是应该存储最终结果的变量,函数原型是

N 也是应该存储最终结果但在过程的本地范围内的变量。

现在有人告诉我,起初,当调用该过程时,SAS 是:

注意 C 和 N 之间的等价集(暂时都未绑定)

然后在所有递归完成后,SAS 是

请注意,C 和 N 都绑定到一个值 (6)

退出该过程后,SAS 将与

因为你破坏了 N 变量。这很好。

我的问题是:在过程递归期间会发生什么?C 变量是否链接到部分值结构 1 + M ?然后下一次 M 链接到 1 + M2 ?

0 投票
2 回答
139 浏览

wpf - 标记扩展,XAML 合并过程编程的方式?

有人可以说标记扩展是 XAML 合并过程编程的一种方式吗?您认为这种说法的局限性是什么?

例如,如果你比较它纯 XML,标记扩展在某种程度上就像“动作元素”,它们不是对象树的一部分。

0 投票
0 回答
346 浏览

sqlalchemy - 平面文件的规范化,配置 sqlalchemy - 以声明方式设置几个多对一的类关系

我的问题与之前的帖子非常相似(如何在 SQLAlchemy 中引用多对一关系的子对象?),但是由于我对 sqla、python 等缺乏经验,我失去了解决方案......

我有一个平面 .csv 文件(RawData),我正在尝试将此父表规范化为类似集合的子表(查找?)表,然后在 ubuntu 上使用 python2.7、sqlite3 v.3.7.7 强制引用完整性11.10。

我也意识到我的理解和命名约定也可能会导致问题,因为看起来我正试图在多对一关系的单一方面创建不同的人、机构、地点等作为孩子,除了 RawGrant 和 Grant 之间的关系,我认为应该是一对一的关系。

我有一个偷偷摸摸的怀疑,我的尝试中存在许多问题,并认为询问可能更方便,希望能治愈我的无知。

非常感谢,克里斯托弗

这是我试图遵循的上一个问题: 如何在 SQLAlchemy 中引用多对一关系的孩子?

我认为,这就是我想要做的,但我对 btw 类、表和关系的命名法感到困惑:

这是我迄今为止的努力(下)。

很抱歉之前的帖子没有帮助...

0 投票
2 回答
5833 浏览

asp.net-mvc - ASP.NET MVC - 错误时的声明性重定向

我一直在捕获异常并将用户重定向到错误页面。我传递异常消息和返回 URL 来告诉用户发生了什么并允许他们返回另一个页面。

这似乎是太多的代码环绕每个动作。我正在对错误使用全局过滤器:

我有这样的 web.config 设置:

但是,这只适用于未处理的异常。

我希望异常导致重定向到错误控制器/操作,该操作采用包含异常详细信息的参数。如果我可以逐个操作地指示返回 URL,或者如果没有提供默认值,那就太好了。

0 投票
1 回答
2930 浏览

java - Java Spring:了解@Transactional rollbackFor 和事务分界

我想将以下堆栈跟踪作为 java 调用:

我希望在输入 A.method1 时启动事务 - 当离开 A.method1 时事务将被提交(或回滚)。我还希望在 B.method2 中使用相同的事务。

从 B.method2 中引发 RuntimeException。这是默认情况下为 rollbackFor “列出”的异常。异常在 A.method1 中被捕获,但在离开 B.method2 时会越过@Transactional 的边界。

这是我的问题:(当前)事务是否会被标记为回滚?