我想以编程方式将@RestControllerAdvice
添加到django settings.py文件中,如下所示:
之前:
#0. Crashed: com.apple.main-thread
0 Appname 0x100062540 ageCalculatorVC.calculate() -> () (ageCalculatorVC.swift:127)
1 Appname 0x100063190 specialized ageCalculatorVC.dateChange(AnyObject) -> () (ageCalculatorVC.swift:96)
2 Appname 0x1000615fc @objc ageCalculatorVC.dateChange(AnyObject) -> () (ageCalculatorVC.swift)
3 UIKit 0x1905230ec -[UIApplication sendAction:to:from:forEvent:] + 96
4 UIKit 0x19052306c -[UIControl sendAction:to:forEvent:] + 80
5 UIKit 0x19050d5e0 -[UIControl _sendActionsForEvents:withEvent:] + 440
6 UIKit 0x190e1b1f0 -[_UIDatePickerView pickerView:didSelectRow:inComponent:] + 540
7 UIKit 0x19075e468 -[UIPickerView _sendSelectionChangedForComponent:notify:] + 116
8 UIKit 0x19075e69c -[UIPickerView _sendSelectionChangedFromTable:notify:] + 340
9 UIKit 0x190c986b8 -[UIPickerTableView _scrollingFinished] + 188
10 UIKit 0x190c98890 -[UIPickerTableView scrollViewDidEndDecelerating:] + 28
11 UIKit 0x19080051c -[UIScrollView(UIScrollViewInternal) _scrollViewDidEndDeceleratingForDelegate] + 132
12 UIKit 0x190693188 -[UIScrollView(UIScrollViewInternal) _stopScrollDecelerationNotify:] + 360
13 UIKit 0x190692c28 -[UIScrollView _smoothScrollWithUpdateTime:] + 2420
14 UIKit 0x190692230 -[UIScrollView _smoothScrollDisplayLink:] + 560
15 QuartzCore 0x18d5ce600 CA::Display::DisplayLinkItem::dispatch(unsigned long long) + 44
16 QuartzCore 0x18d5ce4b0 CA::Display::DisplayLink::dispatch_items(unsigned long long, unsigned long long, unsigned long long) + 436
17 IOKit 0x18a62bdd4 IODispatchCalloutFromCFMessage + 372
18 CoreFoundation 0x18a355958 __CFMachPortPerform + 180
19 CoreFoundation 0x18a36dadc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 56
20 CoreFoundation 0x18a36d27c __CFRunLoopDoSource1 + 436
21 CoreFoundation 0x18a36ad90 __CFRunLoopRun + 1752
22 CoreFoundation 0x18a29ad94 CFRunLoopRunSpecific + 424
23 GraphicsServices 0x18bd04074 GSEventRunModal + 100
24 UIKit 0x190553130 UIApplicationMain + 208
25 Appname 0x10007c6f0 main (AppDelegate.swift:17)
26 libdyld.dylib 0x1892a959c start + 4
--
后:
//MARK: calculate
func calculate()
{
outPutLabel.hidden=true
if(birthDayTxt.text?.characters.count>0)
{
outPutLabel.hidden=false
let calendar = NSCalendar.currentCalendar()
let dateFormatter = NSDateFormatter()
dateFormatter.dateStyle = .LongStyle
//birthday
let Fromdate = dateFormatter.dateFromString(birthDayTxt.text!)
let Components1 = calendar.components([NSCalendarUnit.Day, NSCalendarUnit.Month, NSCalendarUnit.Year], fromDate:Fromdate!)
self.FromDateValue = calendar.dateFromComponents(Components1)!
//today
let Components2 = calendar.components([NSCalendarUnit.Day, NSCalendarUnit.Month, NSCalendarUnit.Year], fromDate:NSDate())
self.ToValueDate = calendar.dateFromComponents(Components2)!
print(ToValueDate)
let diffDateComponents = NSCalendar.currentCalendar().components([NSCalendarUnit.Year, NSCalendarUnit.Month, NSCalendarUnit.Day, NSCalendarUnit.Hour, NSCalendarUnit.Minute], fromDate: FromDateValue!, toDate: ToValueDate!, options: NSCalendarOptions.init(rawValue: 0))
let str="\(diffDateComponents.year) years, \(diffDateComponents.month) months, \(diffDateComponents.day) days"
outPutLabel.text=str
animateLabel(outPutLabel)
}
}
我想到的是以下步骤:
'someapp'
字符串...
...
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
]
...
字符串以指示解析字符串的结尾。...
...
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'someapp',
]
...
中的所有项目以避免冲突^INSTALLED_APPS = [
添加到]
这看起来像一个简单的问题,但我仍然想知道如何用最佳实践来做到这一点。
虽然这是关于python脚本的,但是也欢迎使用GNU工具的bash脚本,如sed,awk,grep。