我正在尝试获取一个格式为html的文本片段,以便在UITableViewCell中的iPhone上很好地显示.
到目前为止我有这个:
NSError* error;
NSString* source = @"<strong>Nice</strong> try, Phil";
NSMutableAttributedString* str = [[NSMutableAttributedString alloc] initWithData:[source dataUsingEncoding:NSUTF8StringEncoding]
options:@{NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType,
NSCharacterEncodingDocumentAttribute: [NSNumber numberWithInt:NSUTF8StringEncoding]}
documentAttributes:nil error:&error];
Run Code Online (Sandbox Code Playgroud)
这种作品.我得到一些粗体'好'的文字!但是......它还将字体设置为Times Roman!这不是我想要的字体.我想我需要在documentAttributes中设置一些内容,但是,我无法在任何地方找到任何示例.
我们在项目中使用state_machine(https://github.com/pluginaweek/state_machine),并希望提供一个带有select的表单,让我们选择一个州.(这是用于搜索,而不是用于设置).我似乎无法找到列出所有可能状态的方法?当然应该有一种自动执行此操作的方法,而不必在某处硬编码文本列表.谢谢!
我们有一个应用程序需要处理放入目录的传入文件.我正在寻找最好的方法来做到这一点.
我们一直在使用循环的Backgroundrb过程,但是,说实话,Backgroundrb是不可靠的,如果可能的话,我们想要远离它.
Delayed_job似乎不是用于正在进行的任务,而是用于一次性.
我发现DirectoryWatcher http://codeforpeople.rubyforge.org/directory_watcher/看起来很有前景,但理想情况下我们希望对此有一些控制权,并且能够监控它是否正常运行.
所以要求是:
感谢您的任何意见!这应该不难,我很惊讶我找不到其他人在网上谈论这个,因为我认为在商业应用中这并不罕见.
我们大量部署了大约十几台服务器.我们想使用Whenever gem,但我无法想办法说出cron作业应该继续使用哪台机器!我们只希望这些作业在我们执行后台作业的服务器上运行.
有没有办法指定这个?
我有一个有一些观察者的rails3应用程序.我不能为我的生活弄清楚如何关闭我的rspec测试!
从控制台我无法执行任何涉及数据库的操作。我得到一个分段错误。
.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/pg-1.1.4/lib/pg.rb:56: [BUG] Segmentation fault at 0x0000000000000110
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin18]
它实际上是可能需要数据库的任何操作,包括 MyModel.new。
-- Control frame information -----------------------------------------------
c:0071 p:---- s:0406 e:000405 CFUNC :initialize
c:0070 p:---- s:0403 e:000402 CFUNC :new
c:0069 p:0016 s:0398 e:000397 METHOD /Users/xxx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/pg-1.1.4/lib/pg.rb:56
c:0068 p:0107 s:0393 e:000392 METHOD /Users/xxx/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activerecord-6.0.1/lib/active_record/connection_adapters/postgres
我已经卸载并重新安装了 pg gem。并重建了数据库。并重新启动 PostgreSQL。
我看到其他人在Puma下运行时报告问题,但我的配置在Puma下有效,在console下失败!
为清楚起见编辑:
是的,使用捆绑器。
使用相同的堆栈跟踪rails c
或bundle exec rails c
具有相同的效果(段错误)启动 rails 控制台。
Gemfile.lock 有 pg (1.1.4)
我重新捆绑,指定捆绑路径。堆栈跟踪现在具有该捆绑路径,因此我猜默认情况下捆绑程序使用的是 rbenv 路径。
我们已经将这些添加到我们的web.xml中:
<init-param>
<param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name>
<param-value>com.sun.jersey.api.container.filter.LoggingFilter</param-value>
</init-param>
<init-param>
<param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name>
<param-value>com.sun.jersey.api.container.filter.LoggingFilter</param-value>
</init-param>
Run Code Online (Sandbox Code Playgroud)
哪个在我的开发环境中调试很好,但是,我看不到有关将这些内容记录到测试服务器上的文件的任何示例!我只看到默认是System.out ...而不是如何传入任何东西.
例子很好!谢谢
我已经问了一个关于目录观看的另一个问题,这个问题得到了解答,但问题的另一半是如何在ruby中最好地创建一个永无止境的进程来做到这一点.以下是要求:
我们看过BackgroundRb,但这看起来有点过时,说实话不可靠!我们看过DelayedJob,但这看起来适合一次性工作(因为一项永无止境的工作似乎阻止任何其他工作完成,因为工作按顺序完成).
我们正在运行一堆构成我们环境的Ubuntu服务器.
有任何想法吗?
我的控制器有这个:
caches_action :render_ticker_for_channel, :expires_in => 30.seconds
Run Code Online (Sandbox Code Playgroud)
在我的路线文件中我有这个:
match '/render_c_t/:channel_id' => 'render#render_ticker_for_channel', :as => :render_channel_ticker
Run Code Online (Sandbox Code Playgroud)
在日志文件中我看到:
Write fragment views/mcr3.dev/render_c_t/63 (11.6ms)
Run Code Online (Sandbox Code Playgroud)
我该如何手动过期?我需要从与渲染控制器不同的控制器使其到期,但即使在渲染控制器中,我也无法让它过期正确的东西.
如果我做:
expire_action(:controller => 'render', :action => 'render_ticker_for_channel', :id => c.id)
Run Code Online (Sandbox Code Playgroud)
我知道了:
Expire fragment views/mcr3.dev/render/render_ticker_for_channel/63 (3.2ms)
Run Code Online (Sandbox Code Playgroud)
如果我做:
expire_action(:controller => 'render', :action => 'render_c_t', :id => c.id)
Run Code Online (Sandbox Code Playgroud)
我知道了:
Expire fragment views/mcr3.dev/render/render_c_t/63 (3.2ms)
Run Code Online (Sandbox Code Playgroud)
这个:
expire_action("render_c_t/#{c.id}")
Run Code Online (Sandbox Code Playgroud)
生产:
Expire fragment views/render_c_t/63 (3.5ms)
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它过期'caches_action'产生的路径?!
我们正在为我们的rails 3.0x应用程序运行带有Nginx + Phusion Passenger的ubuntu服务器.
我在测试机器上的/ etc/environment中设置了一个环境变量:
MC_TEST=true
Run Code Online (Sandbox Code Playgroud)
如果我运行一个控制台(捆绑exec rails c)并输出ENV ["MC_TEST"],我看到'true'.但是,如果我在页面上放置相同的代码(<%= ENV ["MC_TEST"]%>),它什么都看不到.那个变量不存在.
这引出了我的问题:
1 - 使用nginx(不是apache SetEnv)将环境变量引入乘客的正确方法是什么?
2 - 为什么乘客没有适当的环境?