我有两张桌子:
课程
course_dates
第一张表是课程的基本内容。在第二个表中,我只存储课程的日期(即星期一的工作日 1,开始 -> 开始和停止的时间 -> 结束)。课程可以有多个日期。
现在我想为这样的下拉列表创建一个列表:
我完成一个小辅助函数的那一天的名称。
如何使用访问器操作列表方法的参数?
感谢您的帮助!
课程模型
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | class Course extends \\Eloquent { protected $guarded = ['id', 'created_at', 'updated_at']; //Relationship Holidays public function holidays() { return $this->hasMany('Holiday'); } //Relationship Teacher public function teacher() { return $this->belongsTo('Teacher'); } //Relationship User public function bookings() { return $this->hasMany('Booking'); } //Relationship Dates public function dates() { return $this->hasMany('Dates'); } //Accessor for Dates public function getWeekdayAttribute() { //??? } //Validation Rules public static $rules = [ 'name' => 'required', 'teacher_id' => 'required', 'description' => 'required', 'room' => 'required', 'price' => array('required', 'regex:/^\\d*(\\,\\d{2})?$/'), 'maxuser' => 'required|numeric', 'target' => 'required' ]; //Custom Attribute Names public static $names = [ 'name' => 'Kursname', 'teacher_id' => 'Kursleiter', 'description' => 'Beschreibung', 'room' => 'Raum/Ort', 'price' => 'Preis', 'maxuser' => 'Max. Anzahl Teilnehmer', 'target' => 'Zielgruppe' ]; //Change Price Format Get public function getPriceAttribute($price) { return number_format($price, 2, ',', ''); } //Change Price Format Set public function setPriceAttribute($price) { $this->attributes['price'] = str_replace(',', '.', $price); } //Unserialize Target Get public function getTargetAttribute($target) { return unserialize($target); } //Serialize Target Set public function setTargetAttribute($target) { $this->attributes['target'] = serialize($target); } } |
日期模型
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | class Dates extends \\Eloquent { protected $guarded = ['id', 'created_at', 'updated_at']; protected $table = 'course_dates'; public function courses() { return $this->belongsTo('Course')->orderBy('name'); } //Validation Rules public static $rules = [ 'weekday' => 'required', 'start' => 'required|date_format:H:i', 'stop' => 'required|date_format:H:i' ]; //Custom Attribute Names public static $names = [ 'weekday' => 'Wochentag', 'start' => 'Von', 'stop' => 'Bis' ]; } |
辅助函数
2 3 4 5 6 7 8 9 10 11 12 13 14 15 | function showWeekday($id) { $weekday = array( '1' => 'Montag', '2' => 'Dienstag', '3' => 'Mittwoch', '4' => 'Donnerstag', '5' => 'Freitag', '6' => 'Samstag', '0' => 'Sonntag' ); return $weekday[$id]; } |
如果我理解正确的话,可以这样做:
课程日期模型
2 3 | return $this->course->name . ' ' . $this->attributes['start'] . ' - ' . $this->attributes['stop']; } |
然后:
是否有类似“RVMuse1”或“RVMuselist[0]”之类的内容而不是键入整个版本号。在任何时候,我们都会看到一个可能包含5个或更多ruby的列表,我们可以轻松地键入一个数字而不是X.X.X。这也有助于rvmgemset。 最佳答案 这在RVM2.0中是可能的=>https://docs.google.com/document/d/1xW9GeEpLOWPcddDg_hOPvK4oeLxJmU3Q5FiCNT7nTAc/edit?usp=sharing-知道链接的任何人都可以发表评论
我的问题的一个例子是体育游戏。一场体育比赛有两支球队,一支主队和一支客队。我的事件记录模型如下:classTeam"Team"has_one:away_team,:class_name=>"Team"end我希望能够通过游戏访问一个团队,例如:Game.find(1).home_team但我收到一个单元化常量错误:Game::team。谁能告诉我我做错了什么?谢谢, 最佳答案 如果Gamehas_one:team那么Rails假设您的teams表有一个game_id列。不过,您想要的是games表有一个team_id列,在这种情况下
📢博客主页:https://blog.csdn.net/weixin_43197380📢欢迎点赞👍收藏⭐留言📝如有错误敬请指正!📢本文由Loewen丶原创,首发于CSDN,转载注明出处🙉📢现在的付出,都会是一种沉淀,只为让你成为更好的人✨文章预览:一.分辨率(Resolution)1、工业相机的分辨率是如何定义的?2、工业相机的分辨率是如何选择的?二.精度(Accuracy)1、像素精度(PixelAccuracy)2、定位精度和重复定位精度(RepeatPrecision)三.公差(Tolerance)四.课后作业(Post-ClassExercises)视觉行业的初学者,甚至是做了1~2年
我正在使用Rails3.2.3和Ruby1.9.3p0。我发现我经常需要确定某个字符串是否出现在选项列表中。看来我可以使用Ruby数组.includemethod:或正则表达式equals-tildematchshorthand用竖线分隔选项:就性能而言,一个比另一个好吗?还有更好的方法吗? 最佳答案 总结:Array#include?包含String元素,在接受和拒绝输入时均胜出,对于您的示例只有三个可接受的值。对于要检查的更大的集合,看起来Set#include?和String元素可能会获胜。如何测试我们应该根据经验对此进行测试
我在我的rails应用程序中安装了来自github.com的acts_as_versioned插件,但有一段代码我不完全理解,我希望有人能帮我解决这个问题class_eval我知道block内的方法(或任何它是什么)被定义为类内的实例方法,但我在插件的任何地方都找不到定义为常量的CLASS_METHODS,而且我也不确定是什么here,并且有问题的代码从lib/acts_as_versioned.rb的第199行开始。如果有人愿意告诉我这里的内幕,我将不胜感激。谢谢-C 最佳答案 这是一个异端。http://en.wikipedia
我想合并多个事件记录关系例如,apple_companies=Company.where("namelike?","%apple%")banana_companies=Company.where("namelike?","%banana%")我想结合这两个关系。不是合并,合并是apple_companies.merge(banana_companies)=>Company.where("namelike?andnamelike?","%apple%","%banana%")我要Company.where("名字像?还是名字像?","%apple%","%banana%")之后,我会写代
这是我发现自己偶尔想做的事情。假设我有一个参数列表。在Lisp中,我可以像这样`(imaginary-function,@args)为了调用将数组从一个元素转换为正确数量的参数的函数。Ruby中是否有类似的功能?或者我只是在这里使用了一个完全错误的成语? 最佳答案 是的!它被称为splat运算符。a=[1,44]p(*a) 关于Ruby:如何将数组拼接成Lisp风格的列表?,我们在StackOverflow上找到一个类似的问题: https://stackov
@locations=Location.all#currentlistingall@locations=Location.slice(5)orLocation.split(5)使用Ruby,我试图将我的列表分成4列,每列限制为5个;然而,切片或拆分似乎都不起作用。知道我可能做错了什么吗?任何帮助是极大的赞赏。 最佳答案 您可能想使用in_groups_of:http://railscasts.com/episodes/28-in-groups-of这是RyanBates在railscast中的示例用法:
我有一个简单的问题,与关联有关。我有一个书的模型,它有_onereservation。预订属于_书本。我想在预订Controller的创建方法中确保在预订时没有预订一本书。换句话说,我需要检查该书是否存在任何其他预订。我该怎么做?编辑:Aaa我做到了,感谢大家的提示,学到了一些新东西。当我尝试提供的解决方案时,出现no_method错误或nil_class等。这让我开始思考,我尝试处理的对象根本不存在。Krule给了我使用book.find的想法,所以我尝试使用它。最终我得到了它的工作:book=Book.find_by_id(reservation_params[:book_id])
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭9年前。我最近开始学习Ruby,这是我的第一门编程语言。我对语法感到满意,并且我已经完成了许多只教授相同基础知识的教程。我已经写了一些小程序(包括我自己的数组排序方法,在有人告诉我谷歌“冒泡排序”之前我认为它非常聪明),但我觉得我需要尝试更大更难的东西来理解更多关于Ruby.关于如何执行此操作的任何想法?