小编ape*_*dge的帖子

React Js有条件地应用类属性

我想有条件地显示和隐藏此按钮组,具体取决于从父组件传入的内容,如下所示:

<TopicNav showBulkActions={this.__hasMultipleSelected} />
Run Code Online (Sandbox Code Playgroud)

....

__hasMultipleSelected: function() {
  return false; //return true or false depending on data
}
Run Code Online (Sandbox Code Playgroud)

....

var TopicNav = React.createClass({
render: function() {
return (
    <div className="row">
        <div className="col-lg-6">
            <div className="btn-group pull-right {this.props.showBulkActions ? 'show' : 'hidden'}">
                <button type="button" className="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
                  Bulk Actions <span className="caret"></span>
                </button>
                <ul className="dropdown-menu" role="menu">
                  <li><a href="#">Merge into New Session</a></li>
                  <li><a href="#">Add to Existing Session</a></li>
                  <li className="divider"></li>
                  <li><a href="#">Delete</a></li>
                </ul>
            </div>
        </div>
    </div>
    );
  }
});
Run Code Online (Sandbox Code Playgroud)

然而,{this.props.showBulkActions?没有发生任何事情?'show':'hidden'}.我在这里做错了吗?

javascript css class-attributes reactjs twitter-bootstrap-3

287
推荐指数
14
解决办法
23万
查看次数

Python中的相对导入

嘿所有 - 我用Python中的相对导入拉出我的头发.我已经阅读了30次文档和SO和其他论坛上的大量帖子 - 似乎仍然没有用.

我的目录结构目前看起来像这样

src/
    __init__.py
    main.py
    components/
        __init__.py
        expander.py
        language_id.py
    utilities/
        __init__.py
        functions.py
Run Code Online (Sandbox Code Playgroud)

我希望expandder.py和language_id.py可以访问函数模块.我运行python main.py,它可以从components.expander import*和components.language_id import*访问模块.

但是,在expandder和language_id中的代码访问函数模块:

from ..utilities.functions import *
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

ValueError: Attempted relative import beyond toplevel package
Run Code Online (Sandbox Code Playgroud)

我已经过了很多次,它似乎遵循文档.任何人都对这里出了什么问题有任何想法?

python python-packaging

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

在c#中执行此通用抽象类的最佳方法是什么?

我知道我做得不对,但我也知道有办法做到这一点.我试图尽可能地通用和抽象,否则我的代码将变得非常混乱.所以我在这里使用策略模式作为GetAggregateClient()方法.

我想要一个名为AbstractAggregate的抽象类,以便它使用泛型.将使用的类型是一系列数据类,即BlogItem,ResourceItem和AskItem.这些数据类都继承自ListItem.

这就是背景信息.这里的问题是我希望GetAbstractAggregate()返回一个实现AbstractAggregate的客户端类的实例,其中包含根据传入的枚举指定的项目类型.但是,我不能返回"AbstractAggregate".编译器不会让我这样,因为AbstractAggregateFactory类不是通用的.

有没有人有最好的方法来做到这一点?

非常感谢.

public static class AggregateHelper
{
    public enum AggregateTypes { TankTruckBlog, AskTankTruck, Resources }
}

public static class AbstractAggregateFactory
{
    public static AbstractAggregate<T> GetAggregateClient(AggregateHelper.AggregateTypes type)
    {
        switch (type)
        {
            case AggregateHelper.AggregateTypes.AskTankTruck:
                return new AskTankTruckAggregate<AskItem>();
            case AggregateHelper.AggregateTypes.TankTruckBlog:
                return new TankTruckBlogAggregate<BlogItem>();
            case AggregateHelper.AggregateTypes.Resources:
                return new ResourcesAggregate<ResourceItem>();
            default:
                throw new AggregateDoesNotExistException();
        }
    }
}

public abstract class AbstractAggregate<T>
{
    public abstract List<T> GetAggregate(Guid[] resourcetypes);

    public abstract T GetSingle(string friendlyname);


}

public class AskTankTruckAggregate<T> : AbstractAggregate<T>
{
    //not implemented yet …
Run Code Online (Sandbox Code Playgroud)

c# generics refactoring abstract-class strategy-pattern

9
推荐指数
1
解决办法
5577
查看次数

测试项目无法在正在测试的项目中找到对象

我正在使用Visual Studio 2010并创建了一系列单元测试.

这是一个例子:

    [TestMethod()]
    [HostType("ASP.NET")]
    [AspNetDevelopmentServerHost("C:\\Users\\Employee\\Documents\\Code Spaces\\shopvote2\\trunk\\Web", "/Web")]
    [UrlToTest("http://localhost/Web")]
    public void GetUserDetailsTest()
    {
        api_Accessor target = new api_Accessor(); // TODO: Initialize to an appropriate value
        string username = string.Empty; // TODO: Initialize to an appropriate value
        string passhash = string.Empty; // TODO: Initialize to an appropriate value
        int requestID = 0; // TODO: Initialize to an appropriate value
        ShoppingRequestDetailsData[] expected = null; // TODO: Initialize to an appropriate value
        ShoppingRequestDetailsData[] actual;
        actual = target.GetUserDetails(username, passhash, requestID);
        Assert.AreEqual(expected, actual);
        Assert.Inconclusive("Verify …
Run Code Online (Sandbox Code Playgroud)

c# testing unit-testing visual-studio-2010 visual-studio

8
推荐指数
1
解决办法
4245
查看次数

libsvm预测方法混乱

我对libsvm中的svm_predict()方法有疑问.

README有这个快速入门的示例代码:

>>> y, x = [1,-1], [{1:1, 3:1}, {1:-1,3:-1}]
>>> prob  = svm_problem(y, x)
>>> param = svm_parameter('-c 4 -b 1')
>>> m = svm_train(prob, param)

>>> p_label, p_acc, p_val = svm_predict(y, x, m)
Run Code Online (Sandbox Code Playgroud)

现在我知道y是与x中的词典相关联的类别列表.我也理解svm_train部分.

没有意义的部分是在svm_predict中,我需要提供y中的'true values'以及x中的测试数据.我认为这个想法是我不知道测试数据的分类.

如果我的培训数据是:

y = [1, 2, 3]
x = [{1:1}, {1:10}, {1:20}]
Run Code Online (Sandbox Code Playgroud)

但我的测试数据是:

z = [{1:4}, {1:12}, {1:19}]
Run Code Online (Sandbox Code Playgroud)

那么为什么我需要将z的真值传递给svm_predict(),如:

a, b, c = svm_predict(y, z, m)
Run Code Online (Sandbox Code Playgroud)

我不会知道z的真实值 - 这就是预测的目的.我应该在执行预测时为y设置任意分类值,还是我完全遗漏了某些东西?

谢谢大家

python machine-learning libsvm

7
推荐指数
1
解决办法
3409
查看次数

在c#中重构这个静态类的最佳方法是什么?

请参阅下面的示例静态类.

public static class BackgroundTaskExecuter
{
    public static void MethodA()
    {
        using (var service = IocManager.Instance.ResolveAsDisposable<IServiceA>())
        {
            service.Object.MethodA();
        }
    }

    public static void MethodB()
    {
        using (var service = IocManager.Instance.ResolveAsDisposable<IServiceB>())
        {
            service.Object.MethodB();
        }
    }

    public static void MethodC()
    {
        using (var service = IocManager.Instance.ResolveAsDisposable<IServiceC>())
        {
            service.Object.MethodC();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我有三种方法.MethodA,MethodBMethodC具有三个不同的接口对应IServiceA,IServiceB以及IServiceC

我之所以这样做是因为我使用的是带有aspnetboilerplate框架的Hangfire.io,而在Hangfire中,后台任务没有来自正常依赖注入的HttpContext.创建一个包含我手动解析的调用的静态类似乎可以解决这个问题.

用法如下:

BackgroundJob.Enqueue(() => BackgroundTaskExecuter.MethodA());
Run Code Online (Sandbox Code Playgroud)

现在,我的网络应用程序中只有一两个后台任务,但可以想象我将来可能会有更多的任务,而且现在可维护,如果我采用这种方法,它最终会变得难看.

有没有更好的方法来做/重构这个?工厂模式或类似的东西也许?

谢谢.

c# asp.net-mvc hangfire

7
推荐指数
1
解决办法
229
查看次数

在大型字符串文件中查找部分字符串匹配的最有效方法(python)

我下载了维基百科文章标题文件,其中包含每篇维基百科文章的名称.我需要搜索可能匹配的所有文章标题.例如,我可能有"曲棍球"这个词,但我想要的维基百科的曲棍球文章是"Ice_hockey".它也应该是一个不区分大小写的搜索.

我正在使用Python,有没有一种比逐行搜索更有效的方法?我会在理想情况下每分钟执行500次或1000次此搜索.如果逐行是我唯一的选择,我可以做一些优化吗?

我认为文件中有几百万行.

有任何想法吗?

谢谢.

python string search large-files

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

django:根据条件排除某些表单元素

我有一些表单字段,我想根据是否满足某个条件来包含/排除.我知道如何包含和排除表单元素,但是当我希望它根据函数的结果显示元素时,我很难做到.

这是我的表格:

class ProfileForm(ModelForm):
    # this_team = get Team instance from team.id passed in
    # how?

    def draft_unlocked(self):
        teams = Team.objects.order_by('total_points')
        count = 0
        for team in teams:
            if team.pk == this_team.pk:
                break
            count += 1

        now = datetime.datetime.now().weekday()
        if now >= count:
            # show driver_one, driver_two, driver_three
        else:
            # do not show driver_one, driver_two, driver_three

class Meta:
    model = Team
Run Code Online (Sandbox Code Playgroud)

我想要完成的是,根据总积分的排名,团队不应该在指定的日期之前改变他们的驾驶员.在比赛中,排名最后一支球队可以在周一添加/减少一名车手,倒数第二支球队可以在周二增加/减少,依此类推......

所以第一个问题 - 如何从传入的id中获取表单内部的Team实例.而且,如何根据draft_unlocked()的结果包含/排除.

或者也许有更好的方法来做所有这些?

非常感谢大家.

python forms django

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

python词典中使用的'in'子句是否每次调用keys()函数?

比方说我有一个

dict = {...} #lots of words in dictionary  
Run Code Online (Sandbox Code Playgroud)

我必须做一个

for word in ...: #long list of words
    if word in dict:
        #do something
Run Code Online (Sandbox Code Playgroud)

我的问题是,'if word in dict'是否每次都调用dict.keys()函数,因此比在顶部添加另一个变量dict_keys = dict.keys()慢很多?我所说的结果就是这个.

dict = {...}
dict_keys = dict.keys()

for word in ...:
    if word in dict_keys:
        #do something
Run Code Online (Sandbox Code Playgroud)

谢谢

python optimization dictionary

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

正则表达式将'lol'与'lolllll'和'omg'匹配为'omggg'等

嘿那里,我喜欢正则表达式,但我根本不擅长它们.

我有一个大约400个缩短词的列表,如lol,omg,lmao等.每当有人输入这些缩短的单词中的一个时,它就会被其英语副本替换([笑声]或其他类似的东西).无论如何,人们很烦人,并且用最后一个字母重复x次来输入这些简短的单词.

例子:omg - > omgggg,lol - > lollll,哈哈 - > haha​​haha,哈哈 - > lololol

我想知道是否有人可以递给我正则表达式(最好用Python)来解决这个问题?

谢谢大家.

(这是一个与Twitter相关的主题识别项目,如果有人好奇.如果有人发推文"让我们去拍摄一些箍",你怎么知道这条推文是关于篮球等等)

python regex string-matching

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