我需要使用自定义文本字段过滤CGridView.我有自定义dataprovider(CSqlDataProvider),我返回并填充表.表很好,但对我来说似乎很痛苦的是过滤它.我花了几个小时试图解决这个问题并且支持很差.我看到有一些jQuery方法用于更新CGridView,它需要'data'参数,其值我不知道如何格式化.这是我在/ create文件中我需要这个东西的地方.
PHP:
<?php
Yii::app()->clientScript->registerScript('search', "
$('.search-form form').submit(function(){
$.fn.yiiGridView.update('studentiSaSmjeraData', {
data: $(this).serialize(), -----------> this should be changed to get data from my text input using GET I guess, but I dont know the format
});
return false;
});
");
?>
Run Code Online (Sandbox Code Playgroud)
考虑搜索表单的HTML和PHP:
<div class="search-form">
<p>
Pretraga po broju indeksa:
</p>
<?php $form=$this->beginWidget('CActiveForm', array(
'action'=>Yii::app()->createUrl($this->route),
'method'=>'get',
)); ?>
<div class="row">
Broj indeksa: <input type="text" class="br_ind" name="br_ind" id="br_ind" value=""></input>
</div>
<div class="row buttons">
<?php echo CHtml::submitButton('Search'); ?>
</div>
<?php $this->endWidget(); ?>
</div>
Run Code Online (Sandbox Code Playgroud)
dataProvider中我希望将此文本与之比较的列称为"br_ind". …
我在尝试将使用SAP Crystal Reports的VB.Net项目移动到另一台计算机(具有自己的本地MSSQL数据库)时遇到了严重的麻烦.当我第一次创建这个项目时,我工作的计算机名称是"LUKA-LAP",我将它设置为使用名为"LUKA-LAP\SQLExpress"的计算机上的数据库.现在我想将我的应用程序迁移到另一台计算机(让我们称之为目标计算机),所以我必须重建它并更改计算机(服务器)名称以匹配另一台计算机.但是,如果没有在该(目标)计算机上安装VS并在其上重新编译整个项目,我不知道如何做到这一点,这看起来像很多无用的工作.我正在尝试从我拥有VS和所有工具的第三台计算机(我拥有的当前计算机)重建它,并且我通过调整此计算机的名称成功地使其工作.但我不想在目标计算机上安装VS. 但是,当我尝试手动输入目标计算机的名称时,VS首先尝试连接到其服务器,但当然找不到它(我们不在同一网络atm),并拒绝记住连接名称目标计算机的名称.有没有办法绕过这个检查并记住连接,这样当我在目标计算机上运行它时,它才有效?
理想情况下,我希望从我的项目中获得类似Connection String的内容,并将其用于Crystal Report表单进行连接,同时保留旧命令(查询).
因此我得到了以下任务:假设打开5x5版游戏中的所有灯光,请使用UCS/A*/BFS/Greedy最佳搜索找到解决方案的算法.
我先做的是意识到UCS是不必要的,因为从一个状态移动到另一个状态的成本是1(按下一个翻转自己和相邻状态的按钮).所以我所做的就是用BFS写的.事实证明,它工作得太长并且填满了一个队列,即使我在完成它们时不注意去除父节点而不是溢出内存.它会工作大约5-6分钟然后因内存而崩溃.接下来,我所做的就是编写DFS(尽管它没有被提及作为可能性之一)并且它确实在123秒内找到了解决方案,深度为15(我使用深度优先限制,因为我知道深度有一个解决方案15).
我现在想知道的是我错过了什么吗?使用A*搜索尝试解决此问题是否有一些良好的启发式方法?当它是关于启发式的时候我完全没有想到,因为在这个问题中找到一个似乎并不重要.
非常感谢.期待你们的帮助
这是我的源代码(我认为它非常简单易懂):
struct state
{
bool board[25];
bool clicked[25];
int cost;
int h;
struct state* from;
};
int visited[1<<25];
int dx[5] = {0, 5, -5};
int MAX_DEPTH = 1<<30;
bool found=false;
struct state* MakeStartState()
{
struct state* noviCvor = new struct state();
for(int i = 0; i < 25; i++) noviCvor->board[i] = false, noviCvor->clicked[i] = false;
noviCvor->cost = 0;
//h=...
noviCvor->from = NULL;
return noviCvor;
};
struct state* MakeNextState(struct state* temp, int press_pos)
{
struct state* noviCvor …Run Code Online (Sandbox Code Playgroud) 我刚刚开始学习Prolog,我的任务是写一个谓词poklapanje(M,V),如果列表M的所有元素都是列表V的第一个元素,则返回yes,例如poklapanje([1,2],[1, 2,3])应该返回是.我的第一个问题是真实和是的区别是什么,因为我在我的解决方案中变得真实?第二,当我输入poklapanje(X,[1,2,3])时,我应该得到:
X = [];
X = [1];
X = [1,2];
X = [1,2,3];
no
Run Code Online (Sandbox Code Playgroud)
我得到:
X = [];
false
Run Code Online (Sandbox Code Playgroud)
为什么?我想它与我的实现有关,并且打印true/false而不是yes/no.
这是我的代码:
poklapanje([],[_|_]).
poklapanje([A|B],[C|D]):- A == C, poklapanje(B,D).
Run Code Online (Sandbox Code Playgroud)