我有这段代码:
<%= link_to "New User", new_user_path, :class => "button" %><br />
Run Code Online (Sandbox Code Playgroud)
哪个工作正常,但当我改成它时,
<%= button_to "New User", new_user_path, :class => "button" %><br />
Run Code Online (Sandbox Code Playgroud)
我收到这个错误
没有路由匹配[POST]"/ users/new"
任何帮助都将不胜感激.
这里有新的ROR程序员.我正在尝试构建一个允许用户填写表单的Web应用程序,在该表单中输入公司信息,然后单击"提交",将输入添加到数据库中.
目前,如果用户要创建新条目,他们会看到一些字段,例如"公司名称".他们有一个空白框可以放入新公司,旁边有一个下拉菜单,用户可以使用该菜单查看数据库中的现有公司.
<div class="field">
<%= f.label :company_name %><br />
<%= f.text_field :company_name %>
Run Code Online (Sandbox Code Playgroud)
<%= f.label :company_name %><br />
<%= f.select( :company_name, Company.all.map {|p| [p.company_name]}.uniq!, :prompt => "Select a Company") %>
Run Code Online (Sandbox Code Playgroud)
我正在寻找允许用户进入新公司的方法,或者单击下拉菜单并选择现有公司.
目前:如果未在文本框中输入任何内容且未从选项中选择任何选项,则会将其另存为空白.如果输入了某些内容,并且未选择任何选项,则会将其另存为空白.但是,如果输入了某些内容并从下拉列表中选择了某些内容,则会保存下拉选项.
希望我没有让它太混乱.任何帮助都将不胜感激.
提前致谢.
编辑:
我的创建动作现在看起来像这样
def create
@company = Company.new(params[:company])
@company.company_name = params[:new_company_name] unless params[:new_company_name].empty?
respond_to do |format|
if @company.save
format.html { redirect_to @company, notice: 'Company was successfully created.' }
format.json { render json: @company, status: :created, location: @company }
else
format.html { render action: "new" }
format.json { …Run Code Online (Sandbox Code Playgroud) 我无法理解制作高级搜索表单的最佳方法.我在互联网上有一个很好的搜索,在某些方面看,但我不能让他们工作,因为大多数建议已经过时.我已经问了一个问题,但我觉得我太具体了,我无法解决问题.我想在一个搜索按钮上搜索不同的文本框和下拉框.
EDIT2:
projects_controller:
def index
@projects = Project.all
respond_to do |format|
format.html # index.html.erb
format.json { render :json => @projects }
end
end
def search
@project_search = Project.search(params[:search]).order(sort_column + ' ' + sort_direction).paginate(:per_page => 2, :page => params[:page])
end
# GET /projects/1
# GET /projects/1.json
def show
@project = Project.find(params[:id])
respond_to do |format|
format.html # show.html.erb
format.json { render json: @project }
end
end
# GET /projects/new
# GET /projects/new.json
def new
@project = Project.new
respond_to do |format|
format.html # …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个允许用户搜索数据库的应用程序。搜索页面布局将使用一些下拉菜单来显示数据库中已有的数据以缩小搜索范围,并且还使用文本框来允许用户输入“项目名称”等关键字。我在让 Rails 获取搜索表单中输入的所有信息并执行一项大型搜索时遇到问题。
这是我的搜索布局的一部分:
<%= form_tag search_path, :method => 'get' do %>
<%= hidden_field_tag :direction, params[:direction] %>
<%= hidden_field_tag :sort, params[:sort] %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search Project Name", :project_name => nil %>
</p>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search Client", :client => nil %>
</p>
<% end %>
Run Code Online (Sandbox Code Playgroud)
这是我在项目控制器中的索引和搜索操作:
def index
@projects = Project.all
respond_to do |format|
format.html # index.html.erb
format.json { render :json => @projects }
end
end
def search
@project_search …Run Code Online (Sandbox Code Playgroud) 我有一个在开发和生产中使用postgres的应用程序.我最近推到了heroku,一切都很好.我能够从heroku中提取数据库并且没有任何问题地向后推.然而今天,我试图将数据库从heroku中拉下来,我收到了这个错误
heroku db:pull
Loaded Taps v0.3.24
Auto-detected local database: postgres://postgres:a@127.0.0.1/app_development?encoding=utf8
Warning: Data in the database 'postgres://postgres:a@127.0.0.1/app_development?encoding=utf8' will be overwritten and will not be recoverable.
! WARNING: Destructive Action
! This command will affect the app: app
! To proceed, type "app" or re-run this command with --confirm app
> app
Receiving schema
Unable to fetch tables information from http://heroku:osui59a24am79x@taps19.heroku.com. Please check the server log.
Run Code Online (Sandbox Code Playgroud)
所以我heroku logs追赶:
james@james-Vostro-3550:~/Desktop/app$ heroku logs
2012-09-25T10:08:32+00:00 app[web.1]: Started GET "/users" for X.X.X.X at 2012-09-25 …Run Code Online (Sandbox Code Playgroud) 我无法理解如何制作宏.
我正在尝试向下搜索一列,并在每个单元格中检查文本"TODAY()",并将其替换为"TODAY() + B2"B2在某个天数的位置.
我一直在寻找,我认为我很接近,但我仍然遇到麻烦.
Sub findrep()
Dim Findtext As String
Dim Replacetext As String
Findtext = "TODAY()"
Replacetext = SUM(TODAY(),"Sheets("Sheet1").Range("B2").Value")
Columns("A").Replace what:=Findtext, replacement:=Replacetext, lookat:=xlPart, MatchCase:=False
End Sub
Run Code Online (Sandbox Code Playgroud)
我希望将来某个时间在单元格中显示日期,具体取决于单元格B2中的天数.VBA必须能够在单元格中搜索公式,因为公式中不仅仅是"TODAY()"公式.
提前致谢.
我有一个公司表和一个许可证表。我需要为公司表中尚未出现在许可证表中的每个公司在许可证表中插入一个新行。
License (ID,CompanyID,LicenseStart,LicenseEnd,CreatedDate,AddUser,UpdateUser,UpdateDate,TemplateId)
添加新行时,此表中的 ID 增加 1。
Company (ID,Name,CreateDate,CState,LocationID,LegalName)
将为不在许可证表中的每个 CompanyID 输入的默认值应如下所示。
Insert (ID, @theCompanyID, GetDate(), DATEADD(day,14,GETDATE()), null,null,null,null null)
@theCompanyID 将是不在许可证表中的 CompanyID
我对此很陌生,因此将不胜感激。
在删除 Rails 应用程序中的一些 CSS 代码后,我重新启动服务器并刷新页面,发现代码仍在使用。当我使用 Chrome 元素检查器时我仍然可以看到它。
@media screen and (min-width: 961px) {
.logow { position:absolute; left:0px; top:0px;
}
body {
font-family: Verdana, Arial, Tahoma, sans-serif;
background-image: url('bg.png');
}
}
Run Code Online (Sandbox Code Playgroud)
例如,如果我background-image: url('bg.png');从代码中删除 ,背景仍然保持不变。我是 CSS 和 Rails 菜鸟,所以这可能是非常简单的事情。
我试图访问我所做的搜索页面时收到错误.问题似乎是我试图在没有任何空白时删除空白.我的搜索功能有效,但是当technols为零时我无法处理这个案例.
这是我的错误:
NoMethodError in ProjectsController#search
undefined method `[]' for nil:NilClass
Run Code Online (Sandbox Code Playgroud)
在我的项目控制器中,第26行:
tech_ids = params["technols"]["id"].reject(&:blank?).
Run Code Online (Sandbox Code Playgroud)
这是我的搜索操作:
def search
tech_ids = params["technols"]["id"].reject(&:blank?)
@search = params[:client], params[:industry], params[:role], tech_ids, params[:business_div], params[:project_owner], params[:status], params[:start_date_dd], params[:start_date_A], params[:start_date_B], params[:keywords]
@project_search = Project.search(*@search).order(sort_column + ' ' + sort_direction).paginated_for_index(per_page, page)
@search_performed = !@search.reject! { |c| c.blank? }.empty?
@project = Project.new(params[:project])
@all_technols = Technol.all
@project_technol = @project.projecttechnols.build
respond_to do |format|
format.html # search.html.erb
format.json { render :json => @project }
end
end
Run Code Online (Sandbox Code Playgroud)
这是我的项目模型:
class Project < ActiveRecord::Base
attr_accessible :edited_first_name, …Run Code Online (Sandbox Code Playgroud) 这里有一个菜鸟.我刚刚开始学习ROR,我遇到了一个下拉菜单问题,它允许用户从数据库中选择一个项目.我有下拉菜单工作,但不是项目名称,它显示类似项目:0xb61fbdbc.
<%= f.label :project_name %><br />
<%= f.select(:project_name, Project.all, :prompt => "Select a Project") %>
Run Code Online (Sandbox Code Playgroud)
我搜索过,搜索过,没有运气.希望有人可以提供帮助.
提前致谢.
我正在尝试验证文本输入.我注意到,如果文本字段中有任何空格,它会失败.
validates_format_of :role, :with => /\A[a-zA-Z]+\z/, :message => "field should only have letters"
Run Code Online (Sandbox Code Playgroud)
我需要更改以允许空格?谢谢
更新:
将问题更改为除数字之外的任何内容,因为我需要在文本字段中允许特殊字符.
我具有一项功能,用户可以通过输入注册的电子邮件并单击按钮来重置自己的密码。然后,电子邮件将发送到该地址。
<div class ="title">Reset your password</div>
<%= form_for(resource, :as => resource_name, :url => password_path(resource_name), :html => { :method => :post }) do |f| %>
<%= devise_error_messages! %>
<div class="signup">
<div class = "field">Email:
<%= f.email_field :email, :class => "email" %></div>
</br>
<div><%= f.submit "Send me reset password instructions", :class => "button", :confirm => "An email to reset your password has been sent" %></div>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
我要在他们点击“提交”按钮后显示一个弹出框。我现在有一个确认弹出窗口,但是我只想要一个警报弹出窗口,用户只能选择单击“确定”。能做到吗?
我是Rails的新手,所以在寻求帮助时请记住这一点。提前致谢。