Codeigniter/extjs4.0


  database的设置:(本人使用xampp开发的时候,没设端口号,按网上的方法设也不行。最后设成mysql的默认端口号,就连上了。)
  $active_group = 'default';
  $active_record = TRUE;
  
  $db['default']['hostname'] = 'localhost';
  $db['default']['username'] = 'root';
  $db['default']['password'] = '';
  $db['default']['database'] = 'lahezi';
  $db['default']['dbdriver'] = 'mysql';
  $db['default']['dbprefix'] = '';
  $db['default']['pconnect'] = TRUE;
  $db['default']['db_debug'] = TRUE;
  $db['default']['cache_on'] = FALSE;
  $db['default']['cachedir'] = '';
  $db['default']['char_set'] = 'utf8';
  $db['default']['dbcollat'] = 'utf8_general_ci';
  $db['default']['swap_pre'] = '';
  $db['default']['autoinit'] = TRUE;
  $db['default']['stricton'] = FALSE;
  $db['default']['port'] = 3306;
  
  引用外部的css js image 文件
   1.configure的设置:
   $config['base_url'] = 'http://localhost/lahezi/'; (lahezi为根目录的名称 即工程名 base_url可以设置为你的网站得名字 例如:http://www.baidu.com 不过没试过)
   2.把你的css js image 放到根目录下 与application与system同为一级目录;
   可以把所有的css js image 都放到一个文件夹下。
  具体引用如下:
  
  
   <script type="text/javascript" src="</script>
   <script type="text/javascript" src="</script>
  
  3.Extjs的grid的column以及store的fields从服务器中获取动态生成:
  法则:构造object数组,先构造object,然后使用数组的include方法把object添加到数组中。
  4.把从服务器传过来的json转化为数组
  使用ajax获取服务器传过来的json(本人没传过数组,传的是json;把传过来的json转化为object【使用的是json的decode方法】;然后使用object的getValues转化为数组)。
  改变treegrid的store
  可以使用store 的setProxy方法,然后store使用load方法,treegrid使用getview的方法的reflesh方法,就可以了。(以前使用grid的时候,使用的是gridreconfigure的方法变换store和模型不过在这里发现不怎么好使,就无意中试了现在的方法,发现果然好使)。
  store.setProxy({ type: 'ajax',
   //the store will get the content from the .php
   url: 'http://localhost/lahezi/index.php/main_controller/by_months'});
   store.load();
   tree.getView().““refresh””();
  使用tabpanel的tab的loader或autoLoad属性的时候,只能连接纯文本,连接(含有css,js代码)的html的时候,js和css代码都不执行。网上说使用,autoLoad的时候好使(autoLoad: {url: 'myurl', scripts: true}),但是试验不好使。最管用的方法就是直接使用,在同一个js下。(要使用tabpanel可以参考extjs的example)
  Simply include your code 。
  The loaded HTML does have some restrictions:1. It should be a HTML fragment (so no HTML, HEAD and BODY tags).2. Linked CSS files are not supported.3. Ext.onReady won't fire, because the document is already rendered. Simply include your code directly (autoLoad will make sure the code is executed after the page is loaded).
  使用viewport比使用pannel好
  Viewport的layout最好是border,这样可以随浏览器缩放。由于border具有resize属性。不过border要求item至少有一个child是region为center。
  使用formpanel时,里面的textfield的name属性最好不要重名,否则有时候布局就不是你想要的了。
  7.由于extjs4里的formpanel没有了keys属性,要想实现回车submit的话,最好在最后一个textfield设置listener监听keypress(down up)事件:
  listeners:{
   'keypress':{
   // element:form1,
   scope : form1,
   fn: function(f,e,o){
   if(e.getKey() == Ext.EventObject.ENTER){
   var password = Ext.getCmp('password').value;
   var login = Ext.getCmp('login').value;
   //alert(login);
   if(f.isValid() && password != ''&& login != '') {
   Ext.Ajax.request({
   url : 'http://beanpod/~sam/index.php/main_controller/get_login',
   params : {
   password: Ext.getCmp('password').value,
   login : Ext.getCmp('login').value
   },
   method : 'post',
   success : function(response) {
   var text = response.responseText;
   //if(text == 1){
   // alert(response.responseText);
   window.location = 'http://beanpod/~sam/index.php/main_controller/login';
   //}
   // form1.enable(true);
  
   },
   failure : function(response){
   // form1.enable(true);
   // alert(response.toSource);
   alert("I'm very sorry sir(Madam),your network is too slow.
if not is,
it's our Server maintenance.
We sincerely apologize for any inconvenience caused");
   }
   });}
   }
   }
  
   }
   }
  codeigniter的使用redirect进行重定向;
  最好把session存到数据库中,由于session不存到数据库只能存4kb,很容易就用完了。把session存到数据库中得时候,congfig里的sess_match_useragent设为false,否则无法读取数据。(可以参考手册)
  把formpanel(viewport)放中间(可缩放):(使用viewport比使用panel好,使用layout:border 使用region来定位布局)
   var oCont = Ext.get("main_body");
  form1.render(oCont);
  oCont.center(Ext.getBody());
   Ext.create('Ext.Viewport', {
   width: 0,
  height: 0,
  border: 0,
  listeners: {
  'resize' : function() {
  oCont.center(Ext.getBody());
  }

  }});

当你使用extjs的ux是最好使用绝对路径:Ext.Loader.setPath('Ext.ux', 'http://localhost/management/ext/examples/ux/');


  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值