问题列表 - 第36792页

Codeigniter和多重继承?

想知道这是否可能或PHP的限制,谷歌搜索似乎是这种情况,但也许我错过了一个聪明的解决方案.

希望这是有道理的.现在我有两个部分到我的网站,一个管理员和客户端.我已经能够将它分成两个从基础MY_Controller类继承的控制器(管理员和客户端),但我遇到的问题是实现我的身份验证控制器.

客户端/管理员登录之间有很多共享代码,现在我要么必须为扩展基础的每个管理员和客户端创建一个auth控制器(这意味着重复代码很多),或者只是扩展MY_Controller类和使用每个函数中的if/thens,然后变得有点混乱(并绕过管理员/客户端父类,这违背了拥有它们的目的......).

我想知道是否有办法让Auth控制器处于"中立"(?)并且能够从管理员/客户端控制器继承,所以如果X是基本控制器,并且Y是Auth ......

X -> Admin Controller -> Y
X -> Client Controller -> Y
Run Code Online (Sandbox Code Playgroud)

我正在使用一个身份验证库来封装一些较低级别的函数,而不是坚持布局逻辑和类似的东西.如果这是一个愚蠢的问题,请原谅我.谢谢!

php oop inheritance codeigniter

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

每个内存位置,堆栈,堆等的目的是什么?(在技术方面失败)

好吧,我昨天问了Stackoverflow和bufferoverflow之间的区别,几乎被投票遗忘,没有新的信息.

所以它让我思考,我决定重新解释我的问题,希望得到答复,这实际上解决了我的问题.

所以这里什么都没有.

我知道有四个内存段(如果我错了,请纠正我).代码,数据,堆栈和堆.现在AFAIK代码段存储代码,而数据段存储与程序相关的数据.让我严重困惑的是堆栈和堆的目的!

根据我的理解,当你运行一个函数时,函数的所有相关数据都存储在堆栈中,当你递归调用函数内部的函数时,函数内部...当函数在输出上等待时在上一个函数中,函数及其必要的数据不会从堆栈中弹出.所以最终会出现堆栈溢出.(如果我错了,请再次纠正我)

我也知道堆的用途.正如我在某处所读到的,它用于在程序执行时动态分配数据.但这提出了更多解决我问题的问题.我最初在代码中初始化变量时会发生什么..它们是在代码段中还是在数据段中还是在堆中?数组存储在哪里?是在我的代码执行后,我的堆中的所有内容都被删除了吗?总而言之,请以更简单的方式告诉我有关堆的问题,请参阅malloc和alloc,因为我不确定我完全理解这些术语是什么!

我希望人们在回答这些问题时不要迷失在技术性方面,并且可以让这些术语变得简单,以便外行人理解(即使所描述的概念不是非常流行),并且随着我们的进展继续教育我们技术术语.我也希望这不是一个太大的问题,因为我认真地认为他们不能单独询问!

memory

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

c#中的子串帮助

我有字符串qty__c,可能有也可能没有小数点下面的代码给我一个System.ArgumentOutOfRangeException:长度不能小于零.

qty__c = qty__c.Substring(0, qty__c.IndexOf("."));
Run Code Online (Sandbox Code Playgroud)

如果没有".",我如何迎合?

谢谢

c#

0
推荐指数
1
解决办法
228
查看次数

扩展方法和编译时检查

也许有点棘手,但我想知道为什么.在System.Linq.Enumerable.csSystem.Core.dll,我们有:

public static int Count<TSource>(this IEnumerable<TSource> source);
Run Code Online (Sandbox Code Playgroud)

在我的代码中,我正在做一些邪恶的事:

namespace Test
{
   public static class Extensions
   {
     public static int Count<TSource>(this IEnumerable<TSource> source)
     {
        return -1; //evil code
     }
   }

   //commented temporarily
   //public static class CommentedExtensions
   //{
   //  public static int Count<TSource>(this IEnumerable<TSource> source)
   //  {
   //     return -2; //another evil code
   //  }
   //}

   public static void Main(string[] args)
   {
     Console.WriteLine(Enumerable.Range(0,10).Count());   // -1, evil code works
     Console.Read();
   }
}
Run Code Online (Sandbox Code Playgroud)

如果我取消注释CommentedExtensions,我将收到一个编译错误,说"这个调用是不明确的blabla",如预期的那样.但为什么我第一次没有得到这个错误?这也很暧昧!

编辑经过另一次测试后,我发现如果扩展方法位于不同的命名空间中,我将不会遇到编译错误,即使它们完全相同.为什么允许这样做?它在c#中引入了模糊的方法调用.

EDIT2我知道其实两个 …

.net c# linq extension-methods

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

春天默认的hibernate会话控制行为是什么?

我有一个使用spring和hibernate的3层应用程序(controller - > service - > dao),并且事务应用于服务层.我没有配置OpenSessionInViewInterceptor或OpenSessionInViewFilter,我想知道hibernate会话控制行为.每个交易或每个请求打开会话?谢谢!

java session spring hibernate

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

激活TabControl的标签页

我在#.NET应用程序中使用TabControl.默认情况下,TabControl的第一个标签页显示在表单加载中.我想激活/显示表单加载中的其他标签页.以编程方式,我如何显示其他标签页?

c# tabcontrol tabpage winforms

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

Haskell:电梯vs liftIO

在什么情况下应该liftIO使用?当我使用时ErrorT String IO,该lift功能可以解除IO操作ErrorT,因此liftIO看起来多余.

haskell monad-transformers

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

这个ruby on rails迁移有什么问题?

我正在尝试将rails应用程序上的ruby从一台机器迁移到另一台机器上,当我键入Rake db:migrate时会出现以下错误:

Mysql::Error: Table 'schema_migrations' already exists:
CREATE TABLE `schema_migrations` (`version` varchar(255) NOT NULL) ENGINE=InnoDB
Run Code Online (Sandbox Code Playgroud)

可能的原因是什么?

ruby-on-rails

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

如何在django模板中实现运行总计?

我有一个视图,返回按sales_date分组的销售摘要,例如

[{'sale_date':datetime.datetime(2010,10,5,0,0), 'salesum':2, 'item':1},
 {'sale_date':datetime.datetime(2010,10,5,0,0), 'salesum':10,'item':3},
 {'sale_date':datetime.datetime(2010,10,6,0,0), 'salesum':1, 'item':1}]
Run Code Online (Sandbox Code Playgroud)

我在模板中完成了分组,并将它与html ulli标签结合起来,根据sale_date给出了一个很好的分组效果

我的模板分组基于以下代码:

{% regroup salecursor by sale_date|date:"j/m/Y" as salelist %}
Run Code Online (Sandbox Code Playgroud)

{{ saleitem.grouper }
Run Code Online (Sandbox Code Playgroud)

结果是:

05/10/2010

  • item1名称 - 2
  • item2名称 - 10

06/10/2010

  • 第1项名称 - 1

你如何得到每个组的总计,即第一组应该总共12个,第二组总共1个并且具有这种效果;

05/10/2010

  • item1名称 - 2
  • item2名称 - 10

    共12个

06/10/2010

  • 第1项名称 - 1

    总计1

谢谢Gath

django

4
推荐指数
1
解决办法
2806
查看次数

如何在shell脚本中断开字符串

我有以下格式的数据库名称

username_databasename
Run Code Online (Sandbox Code Playgroud)

现在我想将单独的数据库备份放在用户名目录中,例如

/backups/username/backup
Run Code Online (Sandbox Code Playgroud)

如何从该字符串中获取用户名

我还希望如果字符串不包含下划线 (_) 那么备份应该转到

/backups/others/backup
Run Code Online (Sandbox Code Playgroud)

linux shell

4
推荐指数
2
解决办法
6578
查看次数