我试图找出一种方法来计算包含html的特定字符串中的单词.
示例字符串:
<p>Hello World</p>
Run Code Online (Sandbox Code Playgroud)
Ruby中有没有办法计算p标签之间的单词?或者这个问题的任何标签?
例子:
<p>Hello World</p>
<h2>Hello World</h2>
<li>Hello World</li>
Run Code Online (Sandbox Code Playgroud)
提前致谢!
编辑(这是我的工作代码)
控制器:
class DashboardController < ApplicationController
def index
@pages = Page.find(:all)
@word_count = []
end
end
Run Code Online (Sandbox Code Playgroud)
视图:
<% @pages.each do |page| %>
<% page.current_state.elements.each do |el| %>
<% @count = Hpricot(el.description).inner_text.split.uniq.size %>
<% @word_count << @count %>
<% end %>
<li><strong>Page Name: <%= page.slug %> (Word Count: <%= @word_count.inject(0){|sum,n| sum+n } %>)</strong></li>
<% end %>
Run Code Online (Sandbox Code Playgroud) 无论如何回应.yml文件扩展名?
我试过了,但无法让它发挥作用.
respond_to do |format|
format.xml # index.xml.builder
format.yml {render :text => @labels.to_yaml, :content_type => 'text/yaml'}
end
Run Code Online (Sandbox Code Playgroud)
上面的代码吐出以下错误 uninitialized constant Mime::YML
我试图用TDD让我的头"脏",出于某种原因,当我bundle exec rake test在命令行上运行时,没有任何反应.
这是我的RakeFile:
require 'rake/testtask'
Rake::TestTask.new do |test|
test.libs << 'test'
end
desc "Run Tests"
task :default => :test
Run Code Online (Sandbox Code Playgroud)
这是我的测试文件:
require 'test/unit'
class TestMygem < Test::Unit::TestCase
def test_silly_example
assert_equal 2+2, 5
end
end
Run Code Online (Sandbox Code Playgroud) 我有以下型号:
class Contact
attr_accessor :name, :emails, :message
def initialize(attrs = {})
attrs.each do |k, v|
self.send "#{k}=", v
end
end
def persisted?
false
end
end
Run Code Online (Sandbox Code Playgroud)
我在我的视图中呼吁联系表格如下:
<div class="email_form">
<%= render 'form' %>
</div>
Run Code Online (Sandbox Code Playgroud)
这是控制器:
class ShareController < ApplicationController
layout "marketing_2013"
respond_to :html, :js
def index
@contact = Contact.new
end
end
Run Code Online (Sandbox Code Playgroud)
这是表格:
<%= form_for(@contact) do |f| %>
<%= f.label :name, "Your Name" %>
<%= f.text_field :name %>
<%= f.label :text, "Send to (separate emails with a comma)" %>
<%= f.text_field :emails …Run Code Online (Sandbox Code Playgroud) 我有以下内容 form_for
<div class="multiple_students">
<%= f.label :multiple_classes, "Do you teach multiple classes?" %>
<%= f.radio_button :multiple_classes, 1, checked: @user.multiple_classes?, class: 'multiple_classes', data: { question: 'What is your average class size?' } %> <%= f.label :multiple_classes, "Yes", class: 'multiple_classes' %>
<%= f.radio_button :multiple_classes, 0, checked: @user.multiple_classes?, class: 'multiple_classes', data: { question: 'How many kids do you teach?' } %> <%= f.label :multiple_classes, "No", class: 'multiple_classes' %>
</div>
<div class="number_of_students hide">
<%= f.label :students %>
<%= f.text_field :students, :class=>"student_count required digits" %> …Run Code Online (Sandbox Code Playgroud) 在我的应用程序中有Athletes...运动员可以有很多运动.
运动员:
has_many :sports, :through => :user_sports
has_one :primary_sport, conditions: ["user_sports.primary = ?", true], class_name: "Sport"
has_many :user_sports
Run Code Online (Sandbox Code Playgroud)
UserSport:
class UserSport < ActiveRecord::Base
attr_accessible :athlete_id, :sport_id, :primary
belongs_to :athlete
belongs_to :sport
end
Run Code Online (Sandbox Code Playgroud)
我试图能够拉回primary_sport作为Sport对象而不是user_sport对象.
我正在尝试使用Rails 3设置OAuth提供程序服务器,但似乎无法找到任何可以实现此目的的内容.
当涉及到oauth时,我也是一个新手,所以请原谅我的无知.
在设置oauth服务器时,我是否需要在agree2.com这样的地方拥有oauth帐户?或者我可以使用自己的服务器吗?
我正在使用一个 Rails 应用程序,我需要返回特定行的最大值,但还需要返回行的其余内容。
代码:
medias = Media.maximum(:id, :conditions => ['medias.image = true AND medias.subscriber_id = 37'], :group => ['subscriber_id'])
Run Code Online (Sandbox Code Playgroud)
这仅返回 id 和subscriber_id,我需要返回所有行而不仅仅是这两个行。
示例:在我的媒体表中,订阅者可以上传多张照片。我正在尝试按订阅者 ID 分组并获取所有订阅者的最后一个条目。所以基本上我需要一个最大的查找。
这是我的API的样子:
module ServiceRequests
class API < Grape::API
version 'v1', using: :path
format :json
namespace :companies do
params do
requires :company_id, type: Integer, desc: "A Company Id"
end
resource :service_requests do
get :all do
Company.find(params[:company_id]).service_requests
end
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
我试图像这样打电话:http://localhost/v1/companies/:company_id/service_requests/all但是当我打这个电话时,我收到了错误No route matches [GET] "/v1/companies/1/service_requests/all"
工作守则:
module ServiceRequests
class API < Grape::API
version 'v1', using: :path
format :json
resource :companies do
params do
requires :company_id, type: Integer, desc: "A Company Id"
end
route_param :company_id do
resource :service_requests do …Run Code Online (Sandbox Code Playgroud) 我在ES中的对象如下所示:
{
"_index": "myIndex",
"_type": "myType",
"_id": "75fd98d2-eca7-4a94-9dd8-1cc2c9b1fbbf",
"_version": 2,
"found": true,
"_source": {
"account_id": "100",
"import_ids": [
"4f4eef42-5493-464e-ac08-68a3a25a01fb"
],
"accept": "html",
"deleted_at": null,
"signup_form_ids": [
{
"timestamp": "2015-11-23T20:08:11.604000",
"signup_form_id": "1234"
}
],
"mailing_status": "active",
"group_ids": [
"0eddd2c0-ce70-4eb7-bcd8-9e41e41ac0b3"
],
"confirmed_opt_in_at": null,
"fields": [
{
"text_value": "My Company",
"name": "company"
},
{
"text_value": "Foo",
"name": "first-name"
},
{
"text_value": "Bar",
"name": "last_name"
},
{
"text_value": "555-555-5555",
"name": "phone"
}
],
"created_at": "2015-11-23T19:20:15.889000",
"last_modified_at": "2015-11-23T20:08:11.604000",
"bounce_count": 0,
"opted_out_at": null,
"archived_at": null,
"email": …Run Code Online (Sandbox Code Playgroud) ruby ×4
activemodel ×1
activerecord ×1
bundler ×1
form-for ×1
grape-api ×1
has-one ×1
html-parsing ×1
oauth ×1
oauth-ruby ×1
rake-task ×1
ruby-grape ×1
tdd ×1