0 امتیاز
قبل در برنامه نویسی توسط (186 امتیاز)
ویرایش شده قبل توسط

 در ارتباطهای از نوع one-to-one در تولیدگر کد در سمت قویتر رابطه یک لیست در نظر گرفته می شود و یک getter خاص برای تنها مقدار ثبت شده در لیست یاد شده تعریف میشود.

برای ساخت واسطهای کاربری سفارشی شده لازمه که امکان مقدار دهی به این فیلد وجود داشته باشه یعنی بتونیم این فیلد را که به ui-select مرتبط (bind) کردیم توی سرویس دریافت کنیم.

اما این زیادی خوش خیالی است چون setter مرتبط با اون وجود نداره و فیلد یاد شده همیشه null میشه.

اگر کد جنریتور کدی شبیه به این برای فیلدهای مرتبط با رابطه one-to-one تولید کنه مشکل برطرف میشه(انشالله):

 

public void setTheField_(TheFieldEntity e) {
  if (theField == null)
  theField.clear();
   theField=new HashSet<>();
  theField.add(e);

}

قبل توسط (186 امتیاز)
ویرایش شده قبل توسط
ظاهرا ثبت کد جاوا توی سوال لم مخصوصی داره.
من هر جور سعی کردم نشد.
لطفا خودتون زحمتش را بکشید.
قبل توسط (1.2هزار امتیاز)
کدی که تولید می شود، به این فیلدی که شما می فرمایید نیازی ندارد و بدون آن درست کار می کند. چون فرض می کند رابطه از سمت ضعیف قابل برقراری است. اگر چنین نیازی دارید گذاشتن این فیلد بخشی از سفارشی سازی است که خود برنامه نویس انجام می دهد.

1 پاسخ

0 امتیاز
قبل توسط (1.2هزار امتیاز)
انتخاب شده قبل توسط
 
بهترین پاسخ
تولیدگر کد فرض می کند که رابطه از سمت ضعیف برقرار می شود. بنابراین نیازی به این setter ندارد. با توجه به اینکه شما در حال تولید واسط کاربر سفارشی برای موجودیت قوی هستید که در همان فرم موجودیت ضعیف نیز انتخاب یا ویرایش شود، این فرض را نقض کرده اید. بنابراین اضافه کردن این setter نیز بخشی از سفارشی سازی شماست و نیازی نیست تولیدگر کد آن را به عهده بگیرد.

 

پی نوشت: در حال افزودن امکانی در رابطه های یک به یک هستیم که ساختار مورد نظر شما را نیز پوشش بدهد.
قبل توسط (186 امتیاز)
:-)
 چشم.
کار دیگه ای هم میتونیم بکنیم؟
قبل توسط (1.2هزار امتیاز)
دعا بفرمایید.

سوالات مشابه

0 امتیاز
1 پاسخ 276 بازدید
+1 امتیاز
1 پاسخ 439 بازدید
+1 امتیاز
1 پاسخ 440 بازدید
+1 امتیاز
1 پاسخ 444 بازدید
+2 امتیاز
1 پاسخ 532 بازدید
+1 امتیاز
1 پاسخ 194 بازدید
0 امتیاز
1 پاسخ 295 بازدید
+1 امتیاز
1 پاسخ 288 بازدید
+1 امتیاز
1 پاسخ 211 بازدید
...