我开发了一个自定义属性表处理程序,可以在Windows 7和Windows 8上正常工作.在Windows 10上,它没有加载.看来Windows 10中的shell扩展注册有变化,但我没有追踪具体细节.
我的属性表处理程序从jpeg文件(.jpe或.jpeg)中读取自定义XMP数据.如果我注册一个新的文件类型(即.photo扩展名)并注册我的处理程序,它按预期工作:
HKCR\.photo\shellex\PropertySheetHandlers\{my class id}
Run Code Online (Sandbox Code Playgroud)
但是,如果我为现有的jpeg文件类型(jpegfile)注册它,则不会加载它:
HKCR\jpegfile\shellex\PropertySheetHandlers\{my class id}
Run Code Online (Sandbox Code Playgroud)
同样,此问题仅发生在Windows 10上.在Windows 7和8上以HKCR\jpegfile密钥类型注册时,处理程序工作正常.任何人都知道Windows 10可能发生了哪些变化?
我已经对默认表单构建器进行了分类,以添加一些其他方法.示例代码如下.
module ApplicationHelper
class AppFormBuilder < ActionView::Helpers::FormBuilder
def coordinates_field(method, options = {})
options[:readonly] = 'true'
....
@template.text_field(@object_name, method, objectify_options(options))
end
end
end
Run Code Online (Sandbox Code Playgroud)
这很好用,但要使用它我必须更改使用该coordinates_field方法的每个表单的视图代码,即
<%= form_for @object, :builder => ApplicationHelper::AppFormBuilder do |f| %>
...
<% end %>
Run Code Online (Sandbox Code Playgroud)
听起来理论上可以在全局(config.action_view.default_form_builder)中更改默认表单构建器,但我似乎无法使其工作.这是我尝试过的/config/application.rb:
module Web
class Application < Rails::Application
...
config.action_view.default_form_builder = "ApplicationHelper::AppFormBuilder"
end
end
Run Code Online (Sandbox Code Playgroud)
这导致错误未定义方法'new'用于"ApplicationHelper :: AppFormBuilder":当我点击具有表单的视图时的字符串.
如果我反而尝试这个
config.action_view.default_form_builder = ApplicationHelper::AppFormBuilder
Run Code Online (Sandbox Code Playgroud)
应用程序启动时出现错误*config.action_view.default_form_builder = ApplicationHelper :: AppFormBuilder*.
任何人都可以提供有关如何使其工作的指导?
我在Amazon RDS上使用PostreSQL 9.3 w/PostGIS 2.1.8.我有一个名为project_location的表,它定义了"geo-fences"(每个都基本上是一个坐标和半径).使用名为"location"的几何列和名为"radius"的双列存储地理围栏.我在location列上有一个空间索引.
CREATE TABLE project_location
(
...
location geography(Point,4326),
radius double precision NOT NULL,
...
)
CREATE INDEX gix_project_location_location
ON project_location USING gist (location);
Run Code Online (Sandbox Code Playgroud)
该表目前有大约50,000条记录.如果我查询表以查找geo-fence包含一个点的所有project_locations,就像
SELECT COUNT(*)
FROM project_location
WHERE ST_DWithin(location, ST_SetSRID(ST_MakePoint(-84.1000, 34.0000),4326)::geography, radius);
Run Code Online (Sandbox Code Playgroud)
我发现没有使用空间索引.EXPLAIN的结果显示如下:
"Aggregate (cost=11651.97..11651.98 rows=1 width=0)"
" -> Seq Scan on project_location (cost=0.00..11651.97 rows=1 width=0)"
" Filter: ((location && _st_expand('0101000020E610000066666666660655C00000000000004140'::geography, radius)) AND ('0101000020E610000066666666660655C00000000000004140'::geography && _st_expand(location, radius)) AND _st_dwithin(location, '0101000020E610000066666666660655C00000000000004140'::geography, radius, true))"
Run Code Online (Sandbox Code Playgroud)
但是,如果半径是一个常数值,如下所示
SELECT COUNT(*)
FROM project_location
WHERE ST_DWithin(location, ST_SetSRID(ST_MakePoint(-84.1000, 34.0000),4326)::geography, 1000);
Run Code Online (Sandbox Code Playgroud)
空间索引用于EXPLAIN显示
"Aggregate (cost=8.55..8.56 …Run Code Online (Sandbox Code Playgroud) 我在 JavaFX 8 中工作。尝试使用 GridPage 来显示一组属性和值。某些值可能足够长,无法放在一行中。我想包装这些值,但似乎无法弄清楚如何让网格窗格垂直扩展以容纳包装的文本。我基本上想要你在 HTML 表格中看到的行为。不确定我应该使用的 JavaFX 中是否有不同的布局。
Property A Value A
Property B Value B
Property C The Values for property C is so long
that it wraps
Property D Value D
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏
我正在尝试创建一个不受数据库表支持的模型。本质上,模型表示由数据库支持的模型的特定类型的实例。由 db 支持的模型称为 Schedule,无支持的模型称为 Reservation。
Schedule 模型看起来像这样:
class Schedule < ActiveRecord::Base
validates :scheduled_date, :presence => true
...
def self.TIME_PERIODS
@@TIME_PERIODS ||= { time_period_custom: 1, time_period_am: 2, time_period_pm: 3, time_period_all_day: 4 }
end
enum time_period: Schedule.TIME_PERIODS
enum entry_type: { entry_type_reservation: 1, entry_type_blackout: 2 }
...
end
Run Code Online (Sandbox Code Playgroud)
Reservation 模型看起来像这样:
class Reservation
include ActiveModel::Validations
include ActiveModel::Conversion
include ActiveModel::Model
include ActiveRecord::Enum
extend ActiveModel::Naming
attr_reader :id, :entry_type
attr_accessor: :schedule_date, :time_period
validates :scheduled_date, :presence => true
...
enum time_period: Schedule.TIME_PERIODS
...
end
Run Code Online (Sandbox Code Playgroud)
这会产生一个运行时错误:NoMethodError: undefined method …
一段时间以来,我们一直在努力解决 iOS 应用程序中的一个零星问题,似乎偶尔会启动我们的应用程序,但钥匙串尚无法访问。我们还没有找到可靠地重现这一点的方法。
\n\n与许多应用程序一样,我们使用 kSecAttrAccessible = kSecAttrAccessibleWhenUnlocked 将一些敏感数据(即用户凭据)保存到钥匙串中。应用程序将在启动期间在应用程序委托的 didFinishLaunchingWithOptions 覆盖中从钥匙串中读取这些值。这在大多数情况下都可以正常工作。
\n\n但有时我们的用户会报告无法读取钥匙串值的问题。如果用户只是终止应用程序并重新启动它,这些值仍然存在并且一切正常。我们的应用程序不在后台运行,因此我无法想到除用户操作之外的任何其他操作启动它的情况,这意味着设备已解锁。
\n\n我熟悉 application\xe2\x80\x8bProtected\xe2\x80\x8bData\xe2\x80\x8bDid\xe2\x80\x8bBecome\xe2\x80\x8bAvailable 方法,当设备解锁并且诸如钥匙串之类的受保护数据变得可访问。我想我们可以检查 didFinishLaunchingWithOptions 是否 UIApplication.is\xe2\x80\x8bProtected\xe2\x80\x8bData\xe2\x80\x8bAvailable 为 false,如果是的话,则推迟依赖于钥匙串的应用程序初始化部分application\xe2\x80\x8bProtected\xe2\x80\x8bData\xe2\x80\x8bDid\xe2\x80\x8b成为\xe2\x80\x8b可用方法。我总是对编写解决方案而无法重现和测试它持怀疑态度。
\n\n任何人都可以报告说,他们通过应用程序日志看到了一些实例,其中 iOS 受保护的数据在 didFinishLaunchingWithOptions 方法中尚不可用,但稍后可用?
\nios ×1
java ×1
javafx ×1
keychain ×1
objective-c ×1
postgis ×1
postgresql ×1
windows ×1
xcode8 ×1