问题列表 - 第44951页

是否可以使用attr_accessors使用Object.new(:attribute =>"foobar")创建对象?

我似乎无法解决这个问题.

我想在没有数据库的情况下完成此任务:

Object.new(:attribute_1 => "foobar", :attribute_2 => "foobar")
Run Code Online (Sandbox Code Playgroud)

那回报:

ArgumentError: wrong number of arguments (1 for 0)
    from (irb):5:in `initialize'
    from (irb):5:in `new'
    from (irb):5
Run Code Online (Sandbox Code Playgroud)

我的模特:

class Object
  extend ActiveModel::Naming
  include ActiveModel::Conversion

  def persisted?
    false
  end

  attr_accessor :attribute_1, :attribute_2
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails attr-accessor

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

我是否达到了浏览器可以处理的JavaScript对象大小的限制?

<script>在我的HTML中嵌入了一个大型数组,就像这样(没什么好惊讶的):

<script>
    var largeArray = [/* lots of stuff in here */];
</script>
Run Code Online (Sandbox Code Playgroud)

在此特定示例中,阵列具有210,000个元素.这远远低于理论最大值2 31 - 4个数量级.这是有趣的部分:如果我将数组的JS源保存到文件中,那么该文件大于44兆字节(确切地说是46,573,399字节).

如果您想亲眼看看,可以从GitHub下载.(那里的所有数据都是罐装的,所以很多都是重复的.生产中不会这样.)

现在,我真的不担心提供那么多数据.我的服务器gzips它的响应,所以它真的不需要花费很长时间才能通过网络获取数据.但是,一旦加载,页面就会出现令人讨厌的趋势,导致浏览器崩溃.我在IE中根本没有测试(这是一个内部工具).我的主要目标是Chrome 8和Firefox 3.6.

在Firefox中,我可以在控制台中看到一个相当有用的错误:

Error: script stack space quota is exhausted

在Chrome中,我只是得到了悲伤标签页:

在此输入图像描述

已经切入了追逐

  • 对于我们现代的"高性能"浏览器来说,这真的太多了吗?
  • 有什么我可以做*优雅地处理这么多的数据?

顺便说一句,我能够在Chrome中启用此功能(阅读:不会崩溃选项卡).我真的认为Chrome至少是由更强硬的东西制成的,但显然我错了......


编辑1

@Crayon:我不想证明我为什么要立即将这么多数据转储到浏览器中.简短版本:要么解决这个问题(当然不是那么容易),要么我必须解决一大堆其他问题.我现在选择更简单的方法.

@various:现在,我并不是特别想找到减少数组中元素数量的方法.我知道我可以实现Ajax分页或者你有什么,但是在其他方面它会为我引入一系列问题.

@Phrogz:每个元素看起来像这样:

{dateTime:new Date(1296176400000),
 terminalId:'terminal999',
 'General___BuildVersion':'10.05a_V110119_Beta',
 'SSM___ExtId':26680,
 'MD_CDMA_NETLOADER_NO_BCAST___Valid':'false',
 'MD_CDMA_NETLOADER_NO_BCAST___PngAttempt':0}
Run Code Online (Sandbox Code Playgroud)

@Will:但是我的计算机配备了4核处理器,6 GB RAM,超过半TB的磁盘空间......我甚至都没有要求浏览器快速完成这项工作 - 我只想问因为它可以工作!


编辑2

任务完成!

通过JuanGuffa的现场建议,我能够让这个工作!似乎问题只是解析源代码,而不是在内存中实际使用它.

总结胡安答案的评论泥潭:我不得不将我的大阵列分成一系列较小的阵列,然后是Array#concat()它们,但这还不够.我还 …

javascript memory arrays

63
推荐指数
4
解决办法
3万
查看次数

在Spring中有条件地应用拦截器

我怎样才能在下面有条件地添加myOtherInterceptor?

<bean id="myService" class="org.springframework.aop.framework.ProxyFactoryBean">
   <property name="proxyInterfaces"><value>IMyService</value></property>
   <property name="target">
      <bean parent="baseServiceTarget" class="MyService" />
   </property>
   <property name="interceptorNames">
      <list>
         <value>myInterceptor</value>
         <value>myOtherInterceptor</value>
      </list>
   </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

java spring java-ee

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

WPF DataGridTextColumn工具提示

有没有办法将工具提示添加到DataGridColumn标头,仍然保留排序功能.下面的代码不起作用(它不显示工具提示)

<toolkit:DataGridTextColumn Header="Test" Width="70" Binding="{Binding TestText}" ToolTipService.ToolTip="{Binding TestText}">
Run Code Online (Sandbox Code Playgroud)

当我使用下面的代码时

<toolkit:DataGridTemplateColumn Header="Test" Width="70">  
              <toolkit:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding TestText}" ToolTip="{Binding TestText}"  />
                        </DataTemplate>
                    </toolkit:DataGridTemplateColumn.CellTemplate>
                </toolkit:DataGridTemplateColumn>
Run Code Online (Sandbox Code Playgroud)

该列失去了排序功能..帮助!

wpf wpf-controls datagridcolumn wpfdatagrid

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

创造一个类似熔岩灯的动画

我最近看到的东西让我想知道如何为屏幕保护程序或游戏创建逼真的(2D)熔岩灯式动画.

当然可以使用偏微分方程对熔岩灯的物理进行建模,并将其转化为代码.然而,这可能是非常困难的(因为有几个因素,其中最重要的是蜡的"斑点"的几何形状的固有不规则性和大量的变量)并且可能在计算上太昂贵而无法计算即时的.

分析解决方案(如果有的话)可能同样没用,因为你想要在动画中有一定程度的随机性(或随机性).

所以,问题是,任何人都可以想到一种方法,可以让你在一台典型的台式机/笔记本电脑上实时(比如10-30 FPS)动画一个逼真的熔岩灯,而无需在任何物理模型中建模很详细?换句话说,有没有办法"欺骗"?

graphics animation

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

我的流媒体音频播放器在通话过程中继续播放 - 无法让它停止!(机器人)

我有一个由多个活动和一个服务组成的应用程序.主要活动是用于流式传输音频的UI.当用户按下播放按钮时,服务启动,流式传输音频和读取元数据.然后,元数据被推送到UI(如果可见)和通知栏.一切都按预期运行,直到打来的电话.我曾经假设(愚蠢的是)通过使用标准的媒体播放器,android会处理流和电话本身之间的音频切换.所以我创建了一个PhoneStateListener来处理调用并根据需要停止我的播放器.我做错了,因为它仍然没有用.如果您不介意查看服务类和日志文件,我真的很感激!

对不起,一切都很冗长!

谢谢!金大中

package com.wtts.app;

import java.io.BufferedInputStream;
import java.io.FilterInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.Timer;
import java.util.TimerTask;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.IBinder;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.util.Log;

public class WttsListenService extends Service {

 private String txtArtist = "";
 private String txtTitle = "";
 private String txtAlbum = "";
 private Bitmap bmAlbum;
 private …
Run Code Online (Sandbox Code Playgroud)

java android phone-call android-mediaplayer

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

TryUpdateModel无法按预期工作

我正在开发一个ASP.NET MVC项目,允许用户对对象的属性进行批量编辑.该实现是一种类似"向导"的形式,其过程分为四个阶段,如下所示:

  1. "选择要编辑的属性" - 第一页将向用户显示一个复选框列表,表示要编辑的每个属性.用户应检查他们想要编辑的属性,然后选择"继续".
  2. "编辑所选属性" - 第二页将向用户显示不同"编辑器"的列表,这些编辑器对于他们在第一页上选择的每个属性都是唯一的.
  3. "查看您的更改" - 此页面将允许用户查看他们对所选属性所做的更改.
  4. "提交您的更改" - 此页面实际上会针对所选对象集合提交有关用户希望对所选属性进行编辑的信息.

非常坦率的.

正如我所提到的,"编辑器"对于每个属性都是唯一的,并且可以在其上具有不同控件的任意组合.一旦用户进行了编辑并且应用程序将该信息发布到"评论"页面,我就是我当前遇到问题的地方.

我们开发了"EditorWorker"类的概念,该类对每个属性都是唯一的,它负责生成每个编辑器所需的ViewModel,但也负责创建/返回(在"Review"页面控制器操作中)对象是可以绑定发布数据的编辑器的"模型"对象,然后可以用它来显示已编辑的数据以供查看.此对象应具有与编辑器中控件的ID匹配的属性,以便可以进行模型绑定.

我已经得到了"EditorWorker"创建并返回所需的类,但由于某些原因,当我打电话TryUpdateModel并传入类,它的属性没有得到填充作为方法调用的结果,因为我希望他们来.我已经验证了值是在发布的FormCollection中.下面是我试图执行此操作的控制器操作的代码.如果有人可以帮助我理解为什么TryUpdateModel不在这种情况下工作,我会非常感激.

[HttpPost]
public virtual ActionResult Review(ReviewBatchViewModel model)
{
    var selectedAttributes = GetSelectedAttributes(model.SelectedAttributeIds.Split(',').Select(i => Int64.Parse(i)).ToArray());
    var workers = new List<IEditorWorker>();
    var reviewData = new Dictionary<ViewAttribute, IEditData>();
    foreach (var attribute in selectedAttributes)
    {
        if (!string.IsNullOrEmpty(attribute.EditorWorker)) // If there is no EditorWorker defined for this object, move on...
        {
            var worker = ServiceLocator.Current.GetInstance(Type.GetType(string.Format("{0}.{1}", EditorWorkerNamespace, attribute.EditorWorker)));
            var attributeEditData = ((IEditorWorker)worker).LoadEditData();
            if (TryUpdateModel(attributeEditData))
                model.EditData.Add(attributeEditData); …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-mvc-3

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

nvarchar(max)仍然被截断

所以我在MS SQL Server 2008中编写了一个存储过程.这是一个非常长的查询,我必须动态编写它,所以我创建一个名为的变量@Query并使其成为类型NVARCHAR(MAX).现在,我被告知在现代版本的SQL Server中,NVARCHAR(MAX)可以容纳一大堆数据,比最初的4000个字符最多.但是,@Query当我尝试将其打印出来时,仍会被截断为4000个字符.

DECLARE @Query NVARCHAR(max);
SET @Query = 'SELECT...' -- some of the query gets set here
SET @Query = @Query + '...' -- more query gets added on, etc.

-- later on...
PRINT LEN(@Query) -- Prints out 4273, which is correct as far as I can tell
PRINT @Query      -- Truncates value to 4000 characters
EXEC sp_executesql @Query -- totally crashes due to malformed (truncated) query …
Run Code Online (Sandbox Code Playgroud)

sql dynamic-sql sql-server-2008

52
推荐指数
6
解决办法
10万
查看次数

使用Backbone.js离线

我正在评估Backbone.js,以便在我的网络应用程序中保持数据和UI同步.然而,Backbone的大部分价值似乎在于它使用RESTful接口.虽然我将来可能会添加服务器端备份,但我的主要用例是使用HTML5本地存储离线存储所有数据.

对于这样的用例,Backbone是否过度杀伤?如果是这样,是否有更好的解决方案,专注于在数据更改时更新UI,反之亦然?(我也在研究Knockout和Javascript MVC.)

编辑:我现在也在研究Angular.jsjQuery Data Link.

offline javascriptmvc backbone.js knockout.js

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

Android NDK和渲染到动态壁纸

我只是四处寻找开始学习NDK的想法,考虑到一个特定的项目:

我想从NDK端不断渲染更改的位图,以便能够在动态壁纸中显示它.

(因此我不是在谈论渲染到OpenGL纹理,而是渲染到Bitmap)

我google了一下,发现有一个选项可以直接操作Bitmap像素.但我也发现文档说这个功能仅在Android 2.2之后才可用.而且我想在我的动态壁纸中支持2.1.

另一方面,我发现了几个做类似事情的项目 - 从ndk渲染一些东西并在动态壁纸中显示它.他们的工作是2.1.例如:精彩的视频动态壁纸,我认为摇动所有动态壁纸做同样的事情.

所以问题是 - 除了直接操作位图数据之外,我还缺少一些其他的方法来连续渲染到LW吗?或者其他一些我错了?:)

android bitmap android-ndk

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