我需要使用nifty_scaffold为我的模型生成所有视图和控制器,但我已经拥有模型,迁移和数据库中的表,所以我不需要它来生成迁移.它说,问题在于,当它发现旧迁移时
另一个迁移已命名为your_table:db/migrate/20090904212205_create_your_table.rb
我不能创造整个脚手架.
有没有办法忽略Rails中的脚手架迁移?
我是绿色的,但有一个关于修改脚手架的基本问题:添加变量的通知。例如,rails 为我创建了以下 create 方法:
def create
@order = Order.new(params[:order])
respond_to do |format|
if @order.save
format.html { redirect_to(@order, :notice => 'Order was successfully created.') }
format.xml { render :xml => @order, :status => :created, :location => @order }
else
format.html { render :action => "new" }
format.xml { render :xml => @order.errors, :status => :unprocessable_entity }
end
end
end
Run Code Online (Sandbox Code Playgroud)
我想要做的是向 :notice 添加一个变量,以便它可以具体打印创建的订单(或使用更新方法编辑的订单)。我尝试了一些基本的东西,例如传递<%= order.id %>,尽管我觉得这在控制器中看起来不自然?
在此脚手架的这种格式中是否可以添加动态值?或者它是否违反公约。
感谢您的帮助,对不起,如果这是非常新手。
我对开发很陌生,希望有人能提供帮助:
当我包含以下复选框时,我收到错误“未定义的方法‘合并’错误:
<%= f.check_box :is_female, true %> <%= f.label :is_female, "Female" %>
<%= f.check_box :is_female, false %> <%= f.label :is_female, "Male" %>
Run Code Online (Sandbox Code Playgroud)
上面的代码位于我使用以下内容创建的配置文件文件夹中:
$ rails generate scaffold profiles description:string
Run Code Online (Sandbox Code Playgroud)
然后我生成了以下迁移:
$ rails generate migration add_websites_to_profiles website:string
Run Code Online (Sandbox Code Playgroud)
这创建了迁移文件 *************_add_website_to_profiles.rb
这是 add_websites_to_profiles.rb:
class AddWebsiteToProfiles < ActiveRecord::Migration
def change
add_column :profiles, :website, :string
add_column :profiles, :is_female, :boolean, default: false
end
end
Run Code Online (Sandbox Code Playgroud)
我手动添加了以下内容:
add_column :profiles, :is_female, :boolean, default: false
Run Code Online (Sandbox Code Playgroud)
当我在复选框中有trueandfalse命令时收到错误。当我删除true false它时,它会出现在没有错误的页面上,但它没有保存到 db。
我先使用MVC 5,EF 6数据库和脚手架
我创建了一个实体数据模型,然后使用脚手架生成了控制器
然后,我需要更改数据库上的某些字段。我删除了更改的模型(因为EF仅检查数据库中的新事物,如果不删除模型,它将不会更新任何内容)
我删除了生成的文件并再次生成,但是它仍然使用旧的数据模型来生成我的控制器。
我尝试使用新模型(以前从未生成过控制器),但没有用。
你有什么建议吗?还是我更新模型的方式是错误的?
谢谢。
我正在尝试为FW/1创建一个轻型脚手架设施.现在我scaffold.cfc在控制器中调用了一个看起来像的文件
<cfcomponent hint="this is expected to be extended, and never used directly">
<cfscript>
function init(fw) { variables.fw = fw; }
void function home (required struct rc) output="false" {
/* TODO: Generic load */
setView("scaffold.home");
}
void function create (required struct rc) output="false" {
/* TODO: Generic create */
setView("scaffold.create");
}
void function show (required struct rc) output="false" {
/* TODO: Generic show */
setView("scaffold.show");
}
Run Code Online (Sandbox Code Playgroud)
...
</cfscript>
</cfcomponent>
Run Code Online (Sandbox Code Playgroud)
我想确保index.cfm?action=scaffold.*或index.cfm/scaffold/*永远不会跑.
这是最好的去处?
我已成功使用Yii2模型和CRUD生成器为我的Web应用程序获取一些框架代码文件.特别是,CRUD Generator声称已成功将其视图文件创建为:
<yii_root>/basic/views/<my_view_name>/*.php
Run Code Online (Sandbox Code Playgroud)
我把"视图路径"字段留空了.
但是,浏览到:
https://<my_site_FQDN>/basic/web/index.php?r=<my_view_name>/index
Run Code Online (Sandbox Code Playgroud)
吐出"未找到(#404)"错误,我无法在Yii2调试日志中找到任何有用的信息.
欢迎任何有关此事的想法.
安东尼奥
我是rails上的ruby新手.我想知道为什么我们使用scaffold,我们应该在bundle安装过程之后直接运行scaffold.我在某处读到了我们必须首先通过以下方式创建控制器: -
rails generate controller
Run Code Online (Sandbox Code Playgroud)
然后运行脚手架.哪一个是首选方法.创建模型,控制器然后使用scaffold或直接运行scaffold.
scaffolding ×7
boolean ×1
coldfusion ×1
controller ×1
crud ×1
fw1 ×1
migration ×1
ruby ×1
yii2 ×1