小编Tim*_*van的帖子

在从UITableView到UIView的交互式过渡中动画子视图

对于仅支持iOS7的应用程序,我有一个UITableView(虽然如果有帮助的话,将它更改为UICollectionView会是学术性的),其中单元格如下所示:

+----------------------------------+=======+
| Label1                           | sub-  |
| Label2     Label3                | view  |
+----------------------------------+=======+
Run Code Online (Sandbox Code Playgroud)

我想转换到第二个视图,其中子视图缩小为更大,标签位置更改,更像是这样:

          +----------+
          |          |
          | subview  |
          |          |
          +----------+
             Label1
             Label2
             Label3
Run Code Online (Sandbox Code Playgroud)

这类似于iOS7日历应用程序,其中视图正在转换并在途中为部件设置动画.我知道我需要实现UIViewControllerAnimatedTransitioning,但我在概念上遇到类似这样的事情会有问题.我是否隐藏了单元格的子视图,用新视图的子视图替换它们但是在同一个地方,然后设置动画?还是有一种不太复杂的方式?任何示例代码都会受到赞赏,因为我发现的所有示例都没有从一个视图到另一个视图的子视图.

ETA:我越想到这一点,我就越想知道:使用带有流布局的UICollectionView可以更好地处理这个问题,并且只需要将细节调整为将单元格大小调整为屏幕的完整大小吗?

transitions ios ios7

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

处理Ruby on Rails中的国际货币输入

我有一个处理货币输入的应用程序.但是,如果您在美国,则可以输入一个数字12,345.67; 在法国,它可能是12.345,67.

在Rails中,有一种简单的方法可以使货币条目适应区域设置吗?

请注意,我不是在寻找货币的显示(ala number_to_currency),我正在寻找与某人输入货币字符串并将其转换为小数的人.

currency ruby-on-rails internationalization

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

格式化复数

我有一个案例,我需要使用复数来正确拼写一些东西.但是,我需要像这样呈现html:

<span>1</span> thing
Run Code Online (Sandbox Code Playgroud)

要么,

<span>3</span> things
Run Code Online (Sandbox Code Playgroud)

我可以写一个帮助方法,但我只是确保盒子里没有东西可以做到这一点.

ruby-on-rails pluralize

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

UIImage人脸检测

我正在尝试编写一个带有UIImage的例程,并返回一个只包含face的新UIImage.这看起来非常简单,但是我的大脑在绕过CoreImage和UIImage空间时遇到了问题.

这是基础知识:

- (UIImage *)imageFromImage:(UIImage *)image inRect:(CGRect)rect {
    CGImageRef sourceImageRef = [image CGImage];
    CGImageRef newImageRef = CGImageCreateWithImageInRect(sourceImageRef, rect);
    UIImage *newImage = [UIImage imageWithCGImage:newImageRef];
    CGImageRelease(newImageRef);
    return newImage;
}


-(UIImage *)getFaceImage:(UIImage *)picture {
  CIDetector  *detector = [CIDetector detectorOfType:CIDetectorTypeFace 
                                             context:nil 
                                             options:[NSDictionary dictionaryWithObject: CIDetectorAccuracyHigh forKey: CIDetectorAccuracy]];

  CIImage *ciImage = [CIImage imageWithCGImage: [picture CGImage]];
  NSArray *features = [detector featuresInImage:ciImage];

  // For simplicity, I'm grabbing the first one in this code sample,
  // and we can all pretend that the photo has one face for sure. …
Run Code Online (Sandbox Code Playgroud)

xcode core-graphics face-detection ios

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

has_many:通过不加载记录

我有一个Rails 5.2.1应用程序,其中关系的每一步都有效,但has_many :through版本没有.设置有点奇怪,但我觉得我已经正确设置了一切,所以我有点难过.

鉴于此代码:

class Contact < SalesforceModel
  self.table_name =  'salesforce.contact'
  self.primary_key = 'sfid'

  has_many :content_accesses, foreign_key: 'contact__c', class_name: 'ContentAccess'
  has_many :concepts, through: :content_accesses, source: :inventory
end

class ContentAccess < ApplicationRecord
  self.table_name =  'salesforce.content_access__c'
  self.primary_key = 'sfid'

  belongs_to :inventory, foreign_key: 'inventory__c', inverse_of: :content_accesses, primary_key: 'sfid', class_name: 'Inventory'
  belongs_to :contact, foreign_key: 'contact__c', inverse_of: : content_accesses, primary_key: 'sfid', class_name: 'Contact'
end

class Inventory < SalesforceModel
  self.table_name = 'salesforce.inventory__c'
  self.primary_key = 'sfid'

  has_many :content_accesses, foreign_key: 'inventory__c'
  has_many :contacts, through: :content_accesses
end …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

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

Rails中的匿名用户 - 安全考虑因素?

我正在考虑在Rails中实现某种形式的匿名用户系统.我需要让人们做事(创建记录,查看他们创建的内容等),而无需实际创建帐户.一旦他们创建了一个帐户,一切都会持续存在,而不会因清除cookie或其他内容而丢失它.

现在,我认为这很简单.在User模型中有一个is_anonymous字段,并使用类似的东西来访问当前登录的用户:

def find_user
  session[:user_id] ||= create_new_anonymous_user.id
end
Run Code Online (Sandbox Code Playgroud)

假设会话持续了一段合理的时间,并且会话cookie没有过期,那么应该保持一切顺利运行.

然而,有一部分我确信我错过了与安全相关的东西.以前有人做过这样的事吗?我错过了一些非常明显的东西吗?

谢谢!

ruby security ruby-on-rails anonymous-users

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

OmniAuth - Facebook登录不在user_info中提供电子邮件

我正在使用OmniAuth,在通过Facebook登录后,我得到了我的omniauth.auth密钥,如下所示:

user_info: 
  name: Tim Sullivan
  urls: 
    Facebook: http://www.facebook.com/...
    Website: 
  nickname: ...
  last_name: Sullivan
  first_name: Tim
uid: "123456789"
credentials: 
  token: [some token]
extra: 
  user_hash: 
    name: Tim Sullivan
    timezone: -5
    gender: male
    id: "123456789"
    last_name: Sullivan
    updated_time: 2010-12-30T00:52:39+0000
    verified: true
    locale: en_US
    link: http://www.facebook.com/...
    email: tim@myemailaddress.com
    first_name: Tim
provider: facebook
Run Code Online (Sandbox Code Playgroud)

现在,根据文档,电子邮件应该在该user_info部分,但事实并非如此.但是,在该extra/user_hash部分中.由于我正在剥离extra,它没有被存储,所以后来在管道上我遇到了问题.我可以自己添加它,但这并不能解释为什么它首先不存在.

为什么不将电子邮件放入该user_info部分?一个bug?无证的变化?

ruby-on-rails omniauth

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

虚荣,Rails 3和Heroku

我正在努力让Vanity与Heroku和我的Rails 3应用程序很好地配合.目前,使用Pow和本地Redis服务器在本地运行良好,但是当我使用RedisToGo插件推送到Heroku时,似乎没有任何东西让服务器运行,我只是得到错误:getaddrinfo: Name or service not known.

这是我的config/vanity.yml文件:

staging:
  adapter: redis
  host: <%= ENV["REDISTOGO_URL"] %> 
Run Code Online (Sandbox Code Playgroud)

和我的config/initializers/redis.rb:

uri = URI.parse(ENV["REDISTOGO_URL"])
REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
Run Code Online (Sandbox Code Playgroud)

我也试过使用实际redis://<actualusername>:actualpassword@actualserver.com:9274,它给出了同样的错误.我也尝试过,有没有redis://.

有没有人让Vanity和Heroku和Rails 3一起工作?我错过了一些非常明显的东西吗?到目前为止,我的谷歌已经失败了.

ruby-on-rails heroku vanity

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

将NSString分隔为NSArray,但允许引号对单词进行分组

我有一个搜索字符串,人们可以使用引号将短语组合在一起,并将其与单个关键字混合使用.例如,像这样的字符串:

"Something amazing" rooster
Run Code Online (Sandbox Code Playgroud)

我想把它分成一个NSArray,这样它就会Something amazing(没有引号)作为一个元素,而另一个元素rooster.

既不符合componentsSeparatedByString也不componentsSeparatedByCharactersInSet符合法案.有没有一种简单的方法可以做到这一点,还是我应该自己编写代码?

cocoa objective-c nsstring

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

Rails 5.2 + Webpacker:渲染部分内部javascript

我有一个javascript文件(something_controller.js.erb;技术上是Stimulus,但我认为不重要)我想在其中包含部分内容作为后续附加的HTML.

使用Webpacker启用了对ERB的支持,但是调用<%= render partial: 'shared/condition' %>不起作用.它只是悄悄地无法生成.js文件并包含它.

此代码不起作用:

const html = `<%= ApplicationController.renderer.render partial: 'shared/condition' %>`
Run Code Online (Sandbox Code Playgroud)

但是,这不是渲染器.渲染错误,因为这有效:

const html = `<%= ApplicationController.renderer.render inline: 'something' %>`
Run Code Online (Sandbox Code Playgroud)

shared/_condition.html.erb的内容并不奇怪,并且没有变量:

<div data-controller='condition'>
  <a href='#' data-action='condition#remove'><i class="fas fa-trash-alt"></i></a>
  <a href='#' data-toggle="popover" data-target='condition.item' data-action='condition#doNothing'>Item</a>
  <a href='#' data-toggle="popover" data-target='condition.value' data-action='condition#doNothing'>Value</a>
</div>
Run Code Online (Sandbox Code Playgroud)

我已经尝试了我能想到的路径的每个组合:app/views/shared/condition,/ app/views/shared/condition,带有_,带有.html.erb.我已经试过渲染template:file:...我难倒.

半相关:有什么地方我可以看到产生的任何错误?日志显示编译通常成功,但是没有生成简单的控制器.我找不到任何明显的错误日志.

ETA:在development.log中,出现:

[Webpacker] Compiling…
  Rendered shared/_condition.html.erb (36.1ms)
[Webpacker] Compiled all packs in /Users/timsullivan/dev/thing/public/packs
Run Code Online (Sandbox Code Playgroud)

...所以它似乎渲染部分,但something_controller.js文件未包含在组合的application.js中:

something_controller.js丢失了!

为了在某​​处找到错误,我尝试运行:

timsullivan$ rails assets:precompile
yarn install v1.6.0
(node:45691) [DEP0005] DeprecationWarning: Buffer() is deprecated …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails webpack webpacker

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