@@ -240,6 +240,16 @@ func (issue *Issue) loadReactions(e Engine) (err error) {
240
240
return nil
241
241
}
242
242
243
+ func (issue * Issue ) loadMilestone (e Engine ) (err error ) {
244
+ if issue .Milestone == nil && issue .MilestoneID > 0 {
245
+ issue .Milestone , err = getMilestoneByRepoID (e , issue .RepoID , issue .MilestoneID )
246
+ if err != nil && ! IsErrMilestoneNotExist (err ) {
247
+ return fmt .Errorf ("getMilestoneByRepoID [repo_id: %d, milestone_id: %d]: %v" , issue .RepoID , issue .MilestoneID , err )
248
+ }
249
+ }
250
+ return nil
251
+ }
252
+
243
253
func (issue * Issue ) loadAttributes (e Engine ) (err error ) {
244
254
if err = issue .loadRepo (e ); err != nil {
245
255
return
@@ -253,11 +263,8 @@ func (issue *Issue) loadAttributes(e Engine) (err error) {
253
263
return
254
264
}
255
265
256
- if issue .Milestone == nil && issue .MilestoneID > 0 {
257
- issue .Milestone , err = getMilestoneByRepoID (e , issue .RepoID , issue .MilestoneID )
258
- if err != nil && ! IsErrMilestoneNotExist (err ) {
259
- return fmt .Errorf ("getMilestoneByRepoID [repo_id: %d, milestone_id: %d]: %v" , issue .RepoID , issue .MilestoneID , err )
260
- }
266
+ if err = issue .loadMilestone (e ); err != nil {
267
+ return
261
268
}
262
269
263
270
if err = issue .loadAssignees (e ); err != nil {
@@ -297,6 +304,11 @@ func (issue *Issue) LoadAttributes() error {
297
304
return issue .loadAttributes (x )
298
305
}
299
306
307
+ // LoadMilestone load milestone of this issue.
308
+ func (issue * Issue ) LoadMilestone () error {
309
+ return issue .loadMilestone (x )
310
+ }
311
+
300
312
// GetIsRead load the `IsRead` field of the issue
301
313
func (issue * Issue ) GetIsRead (userID int64 ) error {
302
314
issueUser := & IssueUser {IssueID : issue .ID , UID : userID }
0 commit comments