我正在尝试将数据导出到 excel,但我似乎无法让它工作。我在用: http://www.maatwebsite.nl/laravel-excel/docs
并且我会尽可能多地关注文档。所以我有这个观点,我试图在 excel 中获得。 docs告诉我:
$sheet->loadView('folder.view');
所以我这样做了,并且(当然)我收到一条错误消息,指出 View 中的变量没有被拒绝,因为我没有将变量传递到 View 中。所以我再次阅读了文档,它说:
或者,您可以使用 with() 方法,它的工作方式与 Laravel View 相同。
使用基本的 with() 示例。
所以现在我的 Controller 函数中有这个:
public function something(){
$something2='';
$something='';
Excel::create('Laravel Excel', function($excel) {
$excel->sheet('Excel sheet', function($sheet) {
$sheet->loadView('something')->with('something',$something)
->with('something2',$something2);
$sheet->setOrientation('landscape');
});
})->export('xls');
}
现在我在 Controller 中收到一个错误:
undefined variable $something
所以我不知道会出什么问题。我仍然保持积极态度,并认为这会很简单,例如 $something 实际上没有被声明,所以我从 excel 导出中删除了它。然后它给了我错误:
undefined variable $something2
在此之后,我知道还有其他问题。由于根据 excel 创建,两者都没有“定义”。所以我尝试了一些新东西。在 excel 创建中声明两个变量。虽然在声明变量和创建 excel 之间有更多代码。所以这行不通。所以代码是这样的:
$something2='';
$something='';
//more code
if($check==true){
Excel::create('Laravel Excel', function($excel) {
所以我还是卡住了。
这里出了什么问题?我误解了这个 excel 创建的东西吗?
最佳答案
我认为这可能是问题所在,因为您正在使用 cloasure,如果不定义它们的使用,则无法在 cloasure 中访问变量。
public function something(){
$something2='';
$something='';
Excel::create('Laravel Excel', function($excel) use ($something, $something2) {
$excel->sheet('Excel sheet', function($sheet) use ($something, $something2) {
$sheet->loadView('something')->with('something',$something)
->with('something2',$something2);
$sheet->setOrientation('landscape');
});
})->export('xls');
}
关于php - Laravel excel 传递 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30319555/
我需要从一个View访问多个模型。以前,我的links_controller仅用于提供以不同方式排序的链接资源。现在我想包括一个部分(我假设)显示按分数排序的顶级用户(@users=User.all.sort_by(&:score))我知道我可以将此代码插入每个链接操作并从View访问它,但这似乎不是“ruby方式”,我将需要在不久的将来访问更多模型。这可能会变得很脏,是否有针对这种情况的任何技术?注意事项:我认为我的应用程序正朝着单一格式和动态页面内容的方向发展,本质上是一个典型的网络应用程序。我知道before_filter但考虑到我希望应用程序进入的方向,这似乎很麻烦。最终从任何
我想要做的是有2个不同的Controller,client和test_client。客户端Controller已经构建,我想创建一个test_clientController,我可以使用它来玩弄客户端的UI并根据需要进行调整。我主要是想绕过我在客户端中内置的验证及其对加载数据的管理Controller的依赖。所以我希望test_clientController加载示例数据集,然后呈现客户端Controller的索引View,以便我可以调整客户端UI。就是这样。我在test_clients索引方法中试过这个:classTestClientdefindexrender:template=>
我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R
我是rails的新手,想在form字段上应用验证。myviewsnew.html.erb.....模拟.rbclassSimulation{:in=>1..25,:message=>'Therowmustbebetween1and25'}end模拟Controller.rbclassSimulationsController我想检查模型类中row字段的整数范围,如果不在范围内则返回错误信息。我可以检查上面代码的范围,但无法返回错误消息提前致谢 最佳答案 关键是您使用的是模型表单,一种显示ActiveRecord模型实例属性的表单。c
我没有找到太多关于如何执行此操作的信息,尽管有很多关于如何使用像这样的redirect_to将参数传递给重定向的建议:action=>'something',:controller=>'something'在我的应用程序中,我在路由文件中有以下内容match'profile'=>'User#show'我的表演Action是这样的defshow@user=User.find(params[:user])@title=@user.first_nameend重定向发生在同一个用户Controller中,就像这样defregister@title="Registration"@user=Use
我正在使用RubyonRails3.0.9,我想生成一个传递一些自定义参数的link_toURL。也就是说,有一个articles_path(www.my_web_site_name.com/articles)我想生成如下内容:link_to'Samplelinktitle',...#HereIshouldimplementthecode#=>'http://www.my_web_site_name.com/articles?param1=value1¶m2=value2&...我如何编写link_to语句“alàRubyonRailsWay”以实现该目的?如果我想通过传递一些
目前,Itembelongs_toCompany和has_manyItemVariants。我正在尝试使用嵌套的fields_for通过Item表单添加ItemVariant字段,但是使用:item_variants不显示该表单。只有当我使用单数时才会显示。我检查了我的关联,它们似乎是正确的,这可能与嵌套在公司下的项目有关,还是我遗漏了其他东西?提前致谢。注意:下面的代码片段中省略了不相关的代码。编辑:不知道这是否相关,但我正在使用CanCan进行身份验证。routes.rbresources:companiesdoresources:itemsenditem.rbclassItemi
如何在Ruby中按名称传递函数?(我使用Ruby才几个小时,所以我还在想办法。)nums=[1,2,3,4]#Thisworks,butismoreverbosethanI'dlikenums.eachdo|i|putsiend#InJS,Icouldjustdosomethinglike:#nums.forEach(console.log)#InF#,itwouldbesomethinglike:#List.iternums(printf"%A")#InRuby,IwishIcoulddosomethinglike:nums.eachputs在Ruby中能不能做到类似的简洁?我可以只
这是我的网络应用:classFront我是这样开始的(请不要建议使用Rack):Front.start!这是我的Puma配置对象,我不知道如何传递给它:require'puma/configuration'Puma::Configuration.new({log_requests:true,debug:true})说真的,怎么样? 最佳答案 配置与您运行的方式紧密相关puma服务器。运行的标准方式puma-pumaCLI命令。为了配置puma配置文件config/puma.rb或config/puma/.rb应该提供(参见examp
除了可访问性标准不鼓励使用这一事实指向当前页面的链接,我应该怎么做重构以下View代码?#navigation%ul.tabbed-ifcurrent_page?(new_profile_path)%li{:class=>"current_page_item"}=link_tot("new_profile"),new_profile_path-else%li=link_tot("new_profile"),new_profile_path-ifcurrent_page?(profiles_path)%li{:class=>"current_page_item"}=link_tot("p