我想使用CodeIgniter Active Record类实现一个SQL查询.查询看起来像这样..
INSERT california_authors (au_id, au_lname, au_fname)
SELECT au_id, au_lname, au_fname
FROM authors
WHERE State = 'CA'
Run Code Online (Sandbox Code Playgroud)
在不使用$ this-> db->查询方法的情况下,CodeIgniter中是否可以这样做?
方案:
$this->db->select('au_id, au_lname, au_fname');
$this->db->from('california_authors');
$this->db->where('state', 'CA');
$query = $this->db->get();
if($query->num_rows()) {
$new_author = $query->result_array();
foreach ($new_author as $row => $author) {
$this->db->insert("authors", $author);
}
}
Run Code Online (Sandbox Code Playgroud)
问候
我现在把事情弄得一团糟.我更新到Backbone.js 0.9.1,更新为基于斜杠的URL并开始使用pushstate:true
.5天后,我在IE9上测试我的应用程序,并且URL不会粘在他们链接到的页面上.
我做了这样的事情:
main.html中
<a href="/signup">Do Signup</a>
Run Code Online (Sandbox Code Playgroud)
浏览器转到mydomain.com/signup
一秒钟,然后跳转到带有URL的main.html mydomain.com/#signup
.
恢复到pushstate:true
确实解决了简单链接的麻烦,但打破了我定义路由器的路径,如...
SignupRouter = Backbone.Router.extend({
routes: {
'signup': 'signup',
'signup/:key': 'confirm'
}, initialize: function() {
// do some stuff here
}, signup: function() {
// signup view
}, confirm: function() {
// confirm view
}
});
Run Code Online (Sandbox Code Playgroud)
如果我不使用pushstate,我必须回到为每个页面创建一个单独路由并根据服务器端变量加载路由器的策略(我知道非常原始):
SignupRouter = Backbone.Router.extend({
initialize: function() {
// signup view
}
});
ConfirmSignupRouter = Backbone.Router.extend({
initialize: function() {
// confirm view
}
});
Run Code Online (Sandbox Code Playgroud)
是否有一些IE友好的方式(IE7~9)?服务器端的一些解决方法?什么?
我正在使用这两行来使用codeigninter活动记录来更新我的表
$this->db->where('reference_number', $reference);
$this->db->update('patient', $data);
Run Code Online (Sandbox Code Playgroud)
我想要的是检查天气它成功更新表格,并根据我想要通知用户,我如何检查成功更新是否发生在这一行?用户指南中没有任何线索告诉通过放线
if($this->db->update('patient', $data));
Run Code Online (Sandbox Code Playgroud)
会给我们一个真或假的价值,我们可以这样做吗?还是有其他解决方案吗?
问候,Rangana
我试图在jqgrid插件中使用tabletogrid函数.我的问题是如果我删除表中的一行,那么表格单元格的宽度属性就会消失.但是如果删除了最后一行,则删除操作按预期发生.例如,这是我的html表 -
<table id="item_table">
<thead>
<tr>
<th width="60">Date</th>
<th width="15">Icon</th>
<th width="80">Shop</th>
<th width="15">Delete</th>
</tr>
<thead>
<tbody>
<tr>
<td width="60" class="col_date">
<div class="date"></div>
</td>
<td width="15" class="col_icon">
<div class="icon"></div>
</td>
<td width="80" class="col_shop">
<div class="shop"></div>
</td>
<td width="25" class="col_delete">
<div class="delete"></div>
</td>
</tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
然后我使用ajax代码将内容添加到表中.之后是我的jqgrid设置.
jQuery.extend(jQuery.jgrid.defaults, {
caption: "Shops",
autowidth: true,
height: 24,
hidegrid: false,
onCellSelect: function(rowid, index, contents, target) {
if (index == 3) {
$('#item_table tr:eq(' + rowid + ')').remove();
}
},
colModel:[
{ name: …
Run Code Online (Sandbox Code Playgroud) 我想在html表上使用jqgrid生成一个网格.我能够这样做,但如果表中没有找到任何行,我想显示一条消息.我怎样才能做到这一点?
这是我的jquery代码......
jQuery.extend(jQuery.jgrid.defaults, {
caption: "my list",
autowidth: true,
height: "100%",
hidegrid: false,
loadComplete: function() {
alert("Grid has been loaded");
},
colModel:[
{ name: 'date', index: 'date', width: 0, resizable: false },
{ name: 'icon', index: 'icon', width: 0, resizable: false },
{ name: 'shop', index: 'shop', width: 0, resizable: false },
{ name: 'delete', index: 'delete', width: 0, resizable: false }
]
});
tableToGrid("#item_table", {
colNames: ['Date', '', 'Shop', 'Delete']
});
Run Code Online (Sandbox Code Playgroud) 我刚开始使用backbone.js.我在从服务器获取数据时遇到问题.这是我从服务器获得的响应.
[{
"list_name":"list1",
"list_id":"4",
"created":"2011-07-07 21:21:16",
"user_id":"123456"
},
{
"list_name":"list2",
"list_id":"3",
"created":"2011-07-07 21:19:51",
"user_key":"678901"
}]
Run Code Online (Sandbox Code Playgroud)
这是我的javascript代码......
// Router
App.Routers.AppRouter = Backbone.Router.extend({
routes: {
'': 'index'
},
initialize: function() {
},
index: function() {
var listCollection = new App.Collections.ListCollection();
listCollection.fetch({
success: function() {
new App.Views.ListItemView({collection: listCollection});
},
error: function() {
alert("controller: error loading lists");
}
});
}
});
// Models
var List = Backbone.Model.extend({
defaults: {
name: '',
id: ''
}
});
App.Collections.ListStore = Backbone.Collection.extend({
model: List,
url: '/lists'
});
// …
Run Code Online (Sandbox Code Playgroud) 以下是我的骨干应用程序的要求
这是我实现它的方式.
AppRouter = Backbone.Router.extend({
routes: {
'': 'home',
'get/:name/:id': 'contents'
},
home: function() {
// show list of folders
},
contents: function(name, id) {
// show contents of clicked folder
}
});
Run Code Online (Sandbox Code Playgroud)
这种方法给我带来了问题,因为当我点击文件夹时,路径会保存在浏览器历史记录中并且结构为'domain.com#get/folder/1`.如果我碰巧将此URL粘贴到浏览器的地址栏中,则不会呈现文件夹列表,因为它与路径不匹配.
在initialize
路由器功能中显示文件夹列表是否是一种智能策略?可能会创建一个页面视图,检查文件夹是否已经显示?
我正在尝试使用以下代码段对静态网格(由HTML表格制作)进行排序以对其进行排序...
$("#my_table").setGridParam({sortname:'my_date'}).trigger('reloadGrid');
Run Code Online (Sandbox Code Playgroud)
这可以完成工作,但它按升序排序日期.如何按降序对其进行排序?
问候
我想为每个Backbone类添加一个自定义方法 - 模型,集合,路由器,视图.我怎样才能做到这一点?
这是我到现在为止所做的......
Backbone.Router.prototype.method1 = function() {
console.log("I came here: router");
};
Backbone.View.prototype.method1 = function() {
console.log("I came here: view");
};
Backbone.Model.prototype.method1 = function() {
console.log("I came here: model");
};
Backbone.Collection.prototype.method1 = function() {
console.log("I came here: collection");
};
Run Code Online (Sandbox Code Playgroud)
我猜想必须有一个更好,更优雅的方式来做到这一点?
更新
这是我最终实现它的方式.感谢关于记录@dira的建议
在查看stackoverflow上的几个相关问题后,我问这个问题.我从如何检测是否安装了扩展开始.我选择了在某些页面上使用内容脚本向主体添加div的方法.我是这样做的......
的manifest.json
{
"name": "Install Check",
"content_scripts": [
{
"matches": ["http://host.com/*"],
"js" : ["insert_node.js"]
}
],
"permissions": [
"tabs", "host.com/*"
]
}
Run Code Online (Sandbox Code Playgroud)
insert_node.js(内容脚本)
var insert_node = document.createElement('div');
insert_node.id = "HOST_SITE";
document.body.appendChild(insert_node);
Run Code Online (Sandbox Code Playgroud)
主页
<html>
<head>
</head>
<body>
<h1>This is a host site. Welcome!!!</h1>
<script src="jquery.js"></script>
<script src="notification.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
扩展安装脚本
$(document).ready(function() {
if ($('#HOST_SITE').length > 0) {
alert("you have our extension installed");
} else {
alert("not installed");
}
});
Run Code Online (Sandbox Code Playgroud)
我的问题是,在not_installed
chrome可以在DOM中注入节点之前,始终会弹出带消息的警报.我在这里读了manifest.json中的run_at
属性.但这也没有解决问题.我尝试了所有三,,值.我在这里做错了什么?document_start
document_idle …
backbone.js ×4
jqgrid ×3
jquery ×3
activerecord ×2
codeigniter ×2
batch-insert ×1
inject ×1
javascript ×1
php ×1
pushstate ×1
routes ×1
views ×1