小编typ*_*ror的帖子

将错误视为异常.最好的方法?

我试图弄清楚在PHP中处理错误是否有一个好的或更好的方法,而不是我在下面做的.如果电话有问题,我想抛出异常parse_ini_file.这有效,但是有更优雅的方法来处理错误吗?

public static function loadConfig($file, $type)
{
    if (!file_exists($file))
    {
        require_once 'Asra/Core/Exception.php';
        throw new Asra_Core_Exception("{$type} file was not present at specified location: {$file}");
    }

    // -- clear the error
    self::$__error = null;
    // -- set the error handler function temporarily
    set_error_handler(array('Asra_Core_Loader', '__loadConfigError'));
    // -- do the parse
    $parse = parse_ini_file($file, true);
    // -- restore handler
    restore_error_handler();

    if (!is_array($parse) || is_null($parse) || !is_null(self::$__error))
    {
        require_once 'Asra/Core/Exception.php';
        throw new Asra_Core_Exception("{$type} file at {$file} appears to be    
    }
}
Run Code Online (Sandbox Code Playgroud)

__ loadConfigError …

php exception-handling

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

UIButton和UIControlEventState问题

我的iPhone应用程序中有一个非常具体的"错误".我正在为按钮的突出显示和正常状态设置两个图像.当你"按下"然后以慢速"触摸"时它按预期工作,但如果你快速点击/点击它,状态之间会有明显的闪烁.这是一个已知的错误还是我错误地设置状态?

这是创建按钮的代码:

UIImage *normalImage = [[UIImage imageNamed:@"btn-small.png"] stretchableImageWithLeftCapWidth:10.0f topCapHeight:0.0f];
UIImage *highlightedImage = [[UIImage imageNamed:@"btn-small-down.png"] stretchableImageWithLeftCapWidth:10.0f topCapHeight:0.0f];

[self setBackgroundColor:[UIColor clearColor]];

[self setBackgroundImage:normalImage forState:UIControlStateNormal];
[self setBackgroundImage:highlightedImage forState:UIControlStateDisabled];
[self setBackgroundImage:highlightedImage forState:UIControlStateHighlighted];

[self setAdjustsImageWhenDisabled:FALSE];
[self setAdjustsImageWhenHighlighted:FALSE];
Run Code Online (Sandbox Code Playgroud)

当点击一个按钮时,它只是禁用自己并启用另一个按钮:

- (IBAction)aboutButtonTouched:(id)sender
{
    aboutButton.enabled = FALSE;
    rulesButton.enabled = TRUE;
}

- (IBAction)rulesButtonTouched:(id)sender
{
    rulesButton.enabled = FALSE;
    aboutButton.enabled = TRUE;
}
Run Code Online (Sandbox Code Playgroud)

有关此快速点击闪烁的任何想法?

iphone objective-c button

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

需要基于Zend Framework的库中的类

简单的问题.为什么要使用require_once包含在文件中使用的类?例如,如果我创建一个扩展的类Zend_Db_Table_Abstract,我真的不需要在类声明文件中有这个:

require_once "Zend/Db/Table/Select.php";
Run Code Online (Sandbox Code Playgroud)

无论如何,它们都包含在自动装载机中.明确宣布"进口"是否有性能提升?是单元测试吗?

php zend-framework

2
推荐指数
1
解决办法
234
查看次数

我怎样才能知道iphone中的当前viewcontroller名称

我有BaseView实现UIViewController.项目中的每个视图都必须实现此BaseView.

在BaseView中,我有方法:

-(void) checkLoginStatus
{
    defaults = [[NSUserDefaults alloc] init];

    if(![[defaults objectForKey:@"USERID"] length] > 0 )
    {
        Login *login=[[Login alloc] initWithNibName:@"Login" bundle:nil];
        [self.navigationController pushViewController:login animated:TRUE];
        [login release];
    }
    [defaults release];
}
Run Code Online (Sandbox Code Playgroud)

问题是我的Login视图还实现了BaseView,检查登录,然后再次打开LoginView即插入递归调用.

我是否可以检查checkLoginStatus方法,如果请求来自LoginView,则不采取任何其他操作检查登录.例如:

- (void) checkLoginStatus
{
    **if(SubView is NOT Login){** 
        defaults = [[NSUserDefaults alloc] init];

        if(![[defaults objectForKey:@"USERID"] length] > 0 )
        {
            Login *login=[[Login alloc] initWithNibName:@"Login" bundle:nil];
            [self.navigationController pushViewController:login animated:TRUE];
            [login release];
        }
        [defaults release];
    }
}
Run Code Online (Sandbox Code Playgroud)

请帮忙..

iphone objective-c uiviewcontroller

2
推荐指数
1
解决办法
2742
查看次数

局部变量分配与直接分配; 属性和记忆

在objective-c中,我看到很多示例代码,其中作者分配局部变量,将其分配给属性,然后释放局部变量.这样做是否有实际原因?我一直只是直接分配给该物业.这会以任何方式导致内存泄漏吗?我想我想知道这是否有任何区别:

HomeScreenBtns *localHomeScreenBtns = [[HomeScreenBtns alloc] init];
self.homeScreenBtns = localHomeScreenBtns;
[localHomeScreenBtns release];
Run Code Online (Sandbox Code Playgroud)

还有这个:

self.homeScreenBtns = [[HomeScreenBtns alloc] init];
Run Code Online (Sandbox Code Playgroud)

假设homeScreenBtns是这样的属性:

@property (nonatomic, retain) HomeScreenBtns *homeScreenBtns;
Run Code Online (Sandbox Code Playgroud)

我正准备将我的应用程序提交到应用程序商店,因此我处于完全优化/ QA模式.

memory-management objective-c

2
推荐指数
1
解决办法
929
查看次数

命名空间路由的默认资源?

使用Rails 3中的路由,使用命名空间路由,如下例所示......

namespace :admin do
    get 'dashboard' => 'dashboard#index'
end
Run Code Online (Sandbox Code Playgroud)

...如何让'/ admin'路由到'dashboard #index'以及'/ admin/dashboard'?最好的方法是定义......

get 'admin' => 'admin/dashboard#index'
Run Code Online (Sandbox Code Playgroud)

在命名空间之外还是有一种更优雅的方法来对资源进行别名?

ruby ruby-on-rails rails-routing ruby-on-rails-3

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

Ember Data填充记录

需要帮助Ember-Data与Zend Rest合作.

起初,我熟悉Zend Framework,因此Rest Adapter很容易设置.telnet的请求显示它有效,响应也有格式良好的HTTP代码.

使用Ember Data的设置稍微复杂一些.我安装了一个带Ubuntu的虚拟机,安装了Ruby 1.9.3,git clone编写了ember-data存储库并用rake生成了JS文件.我还安装了bundler来解决所有依赖项.似乎工作没有错误.这对我来说是第一次.我不熟悉红宝石.

不幸的是,它似乎没有起作用.在我的测试应用程序上,我看到了firebug的其余请求.回应看起来也不错.但对象仍然是空的.

响应:

[{"id":"1","user":"testuser","password":"123","mail":"my@me.com","role":"GUEST","active":"1","hash":null,"last_login":null}]
Run Code Online (Sandbox Code Playgroud)

响应标头:

Cache-Control       no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Connection          Keep-Alive
Content-Encoding    gzip
Content-Length      121
Content-Type        application/json; charset=utf-8
Date                Wed, 20 Jun 2012 10:49:38 GMT
Expires             Thu, 19 Nov 1981 08:52:00 GMT
Keep-Alive          timeout=15, max=99
Pragma              no-cache
Server              Apache
Vary                Accept-Encoding
X-Powered-By        PHP/5.3.13
X-UA-Compatible     IE=Edge,chrome=1
Run Code Online (Sandbox Code Playgroud)

我的应用:

    // my script
    App = Em.Application.create();

    App.store = DS.Store.create({
      revision: 4,
      adapter: DS.RESTAdapter.create({ bulkCommit: false, namespace: 'rest' })
    });

    App.User = DS.Model.extend({ …
Run Code Online (Sandbox Code Playgroud)

ember.js ember-data

2
推荐指数
1
解决办法
2160
查看次数

设计模型确认后做自定义动作

我知道一旦用户确认了一个Confirmable帐户,我可以用以下内容更改重定向网址:

def after_confirmation_path_for(resource)
  view_context.admin_dashboard_url_for(subdomain: resource.tenant.subdomain)
end
Run Code Online (Sandbox Code Playgroud)

但是如果我想resource在确认之后调用自定义方法,我将如何使用设计?我想我可以坚持这种方法......

 def after_confirmation_path_for(resource)
   resource.do_thing_after_confirmation
   view_context.admin_dashboard_url_for(subdomain: resource.tenant.subdomain)
 end
Run Code Online (Sandbox Code Playgroud)

但是这种方法改变模型并不合适.

ruby ruby-on-rails devise devise-confirmable

2
推荐指数
1
解决办法
605
查看次数

Rails 选择值到属性中

假设我有一个像这样的简单模型,其中包含一个名为“name”的字段和一个名为“aliased_name”的属性:

class User < ActiveRecord::Base
   attr_accessor :aliased_name
end

User.create(name: "Faye Kname")
Run Code Online (Sandbox Code Playgroud)

我可以:

user=User.select(:id, :name)
user.name # Faye Kname
Run Code Online (Sandbox Code Playgroud)

但是我如何使用select来填充aliased_name属性。

user=User.select(:id, "name AS aliased_name")
user.aliased_name # nil
user[:aliased_name] # Faye Kname
Run Code Online (Sandbox Code Playgroud)

我可以访问:aliased_name符号,但未分配属性。我想不必做

user.aliased_name = user[:aliased_name]
Run Code Online (Sandbox Code Playgroud)

我实际上正在对另一个表进行更复杂的连接,并且我试图从连接表中选择一个字段到别名中,但我认为这将是一个更简单的示例。

ruby activerecord ruby-on-rails

2
推荐指数
1
解决办法
1231
查看次数

“删除”运算符的操作数必须是可选的/对象在角度 12 中可能存在“未定义”错误

所以我正在以角度创建警报服务,但无法克服此错误。我知道可以通过在 ts.config 文件中禁用严格的空检查来抑制此错误。但不想采取这种方法尝试过操作符使其成为可选,但它仍然不起作用,我不确定我是否将操作符放在正确的位置,我是角度新手,任何指导都会非常有帮助,谢谢

 alerts: Alert[] = [];

 this.alerts!.find(x => x === alert).fade = true;

Run Code Online (Sandbox Code Playgroud)

警报模型.ts

export class Alert {
   public id!: string;
   public type!: AlertType;
   public message!: string;
   public autoClose!: boolean;
   public keepAfterRouteChange!: boolean;
   public fade!: boolean;

    constructor(init?:Partial<Alert>) {
        Object.assign(this, init);
    }
}

export enum AlertType {
    Success,
    Error,
    Info,
    Warning
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

在此输入图像描述

typescript angular

2
推荐指数
1
解决办法
8378
查看次数